русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Решение задач с использованием одномерных массивов.


Дата добавления: 2014-11-28; просмотров: 4444; Нарушение авторских прав


Теория.

В повседневной и научной практике часто приходится встречаться с информацией, представленной в табличной форме. Вот, например, таблица, содержащая значения температуры, за определенный год.

Месяц
Температура -21 -18 -7,5 5,6 22,2 5,4 -7 -18

Такую таблицу называют линейной. Она представляет собой последовательность упорядоченных чисел. Если требуется какая-то математическая обработка данных, то для их обозначения вводят индексную символику.

Например:

Т1 – температура января;

Т5 – температура мая;

В общем виде множество значений, содержащихся в таблице, можно обозначить так: { Ti }, I = 1,2,3, …,12.

Порядковые номера элементов называются индексами. Индексированные величины удобно использовать для записи их математической обработки: . По данной формуле можно подсчитать среднегодовую температуру.

В языке Паскаль для записи линейных таблиц используют структурированный тип данных, который называется одномерным массивом. Одномерный массив представляет собой совокупность пронумерованных однотипных значений, имеющих общее имя. Элементы массива обозначаются переменными с индексами. Индексы записывают в квадратных скобках после имени массива.

Например: T[1], T[5], T[I] и т.п.

 

Описание одномерных массивов:

Переменная типа одномерный массив описывается в разделе описания переменных в следующем виде:

varимя массива: array[1..n] ofтип;

n – количество элементов массива.

Пример:var T: array [1..12] of real;

 

Обработка массивов в программах производится поэлементно. Обращаются к элементам массива, указывая индекс.

 

Ввод массива (чтение массива):

writeln(‘введите ’,n,‘ элементов массива’);

for i:=1 to 12 do



readln (t[i]);

 

Вывод массива:

writeln(‘массив’);

for i:=1 to 12 do



writeln (‘t[’,i,‘]=’, t[i]:0:2);

Примеры задач.

1. Известны данные о среднемесячной температуре за год. Требуется вычислить среднегодовую температуру, а также ежемесячные отклонения от этой величины.

Program Example;

Const n=12;

Var t, dt:array[1..n] of real;

ts:real;

i:integer;

Begin {ввод исходных данных}

writeln (‘введите температуру за ’,n,‘ месяцев’);

for i:=1 to n do

readln (t[i]);

{вычисление средней температуры}

ts:=0;

for i:=1 to n do

ts:=ts+t[i];

ts:=ts/n;

{вычисление таблицы отклонений от среднего}

for i:=1 to n do

dt[i]:=t[i]–ts;

{вывод результатов}

writeln (‘среднегодовая температура =’ , ts:0:2);

writeln (‘отклонения от среднегодовой температуры:’);

for i:=1 to n do

writeln (i,‘ – месяц: ’, dt[i]:0:2);

End.

2. Дан массив из 8 элементов целого типа. Найти сумму положительных элементов массива.

Program summa;

Const n=8;

Var a:array[1..n] of integer;

i,s:integer;

Begin {ввод исходных данных}

writeln (‘введите ’,i,‘ целых чисел’);

for i:=1 to n do

readln (a[i]);

s: =0;

for i:=1 to n do

if a[i]>0

then s:=s+a[i];

writeln (‘сумма положительных чисел =’,s);

End.

 

3. Задать массив B из 12 элементов по следующей формуле: . Вывести полученный массив. Найти максимальный элемент массива.

Program maximum;

Const n=12;

Var b:array[1.. n] of integer;

i,max:integer;

Begin {получение массива}

for i:=1 to n do

if i<6

then b[i]:=sqr(i)-15

else b[i]:=i+8;

{вывод массива}

writeln(‘массив’);

for i:=1 to n do

writeln (‘b[’,i,‘]=’, b[i]);

{поиск максимального элемента массива}

max:=b[1];

for i:=1 to n do

if b[i]>max

then max:=b[i];

writeln (‘максимум=’,max);

End.

4. Получить массив C из 10 элементов следующего вида: . Вывести полученный массив. Сосчитать количество отрицательных элементов массива.

Program kolvo;

Const n=10;

Var c:array[1.. n] of real;

i,k:integer;

Begin {получение массива}

for i:=1 to n do

c[i]:=(i*sqr(i)-10*i)/3;

{вывод массива}

writeln(‘массив’);

for i:=1 to n do

writeln (‘с[’,i,‘]=’, с[i]:0:2);

{подсчет количества отрицательных}

k:=0;

for i:=1 to n do

if c[i]<0

then k:=k+1;

writeln (‘количество отрицательных чисел=’,k);

End.

 

5. Дан массив из 10 элементов целого типа. Заменить отрицательные элементы массива на их квадрат, положительные оставить без изменения. Вывести полученный массив.

Program zamena;

Const n=10;

Var a:array[1.. n] of integer;

i:integer;

Begin {ввод исходных данных}

writeln (‘введите ’,i,‘ целых чисел’);

for i:=1 to n do

readln (a[i]);

{замена отрицательных чисел}

for i:=1 to n do

if a[i]<0

then a[i]:=sqr(a[i]);

{вывод массива}

writeln(‘массив’);

for i:=1 to n do

writeln (‘a[’,i,‘]=’, a[i]);

End.

Задания.

Студенты решают задачи на компьютерах по вариантам с помощью среды программирования PascalABC.

 

Вариант 1

1. Дан массив из 10 целых чисел. Найти количество отрицательных элементов массива.

2. Дан массив из 8 чисел. Заменить все положительные числа на 0. Отрицательные числа оставить без изменения. Вывести элементы массива.

3. Дано натуральное число n. Задать массив из n элементов по формуле . Вывести элементы массива. Найти минимальный элемент массива.

Вариант 2

1. Дан массив из 8 чисел. Найти максимальный элемент массива.

2. Дан массив из 6 целых чисел. Умножить все отрицательные числа на 5. Вывести элементы массива.

3. Дано натуральное число n. Задать массив из n элементов по формуле . Вывести элементы массива. Найти сумму положительных элементов массива.

 

Вариант 3

 

1. Дан массив из 10 целых чисел. Найти минимальный элемент массива.

2. Дан массив из 7 чисел. Заменить все отрицательные числа на их модуль. Вывести элементы массива.

3. Дано натуральное число n. Задать массив из n элементов по формуле . Вывести элементы массива. Найти количество отрицательных элементов массива.

 

Вариант 4

 

1. Дан массив из 7 чисел. Найти сумму положительных элементов массива.

2. Дан массив из 6 целых чисел. Умножить все положительные числа на -2. Вывести элементы массива.

3. Дано натуральное число n. Задать массив из n элементов по формуле . Вывести элементы массива. Найти максимальный элемент массива.




<== предыдущая лекция | следующая лекция ==>
Карточка №4 | Решение задач с использованием двумерных массивов.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.052 сек.