Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Примеры программ обработки массивов





 

Пример 1. Ввести в ЭВМ массив, содержащий не более 100 чисел вещественных чисел. Вывести числа, стоящие на четных местах в массиве.

Рrogram Wtr;

Const

Nmax=100;

Var

X: Array[1..Nmax] Of Real;

i, n: Integer;

Begin

Writeln('Введите количество чисел');

Readln(n);

Writeln('Введите массив');

For i: = 1 To n Do

Read (X[i]);

For I: = 1 To n div 2 Do

Write (X[2*i]);

End.

Пример 2. Ввести в ЭВМ массив (последовательность) из n чисел (n< =100). Подсчитать количество положительных и отрицательных чисел, их суммы и средние значения.

Алгоритм (общий подход).

1. Ввести числа.

2. Положить количества положительных, отрицательных чисел и суммы = 0

3. Для номера числа от 1 до n выполнить

вычислить соответствующие суммы и количества

4. Вывести суммы, количества и средние.

5. Закончить.

 

Уточним этот алгоритм.

1.1. Ввести количество чисел n

1.2. Для номера числа (i) от 1 до n выполнить

ввести числоi

2. Положить количества положительных, отрицательных чисел и их сумм =0

3. Для номера числа от 1 до n выполнить

3.1. Если числоi > 0, то

а) Количество_Пол_Чисел = Количество_Пол_Чисел +1 и

б) Сумма_Пол_Чисел = Сумма_Пол_Чисел + числоi

иначе

если числоi > 0, то

а) Количество_Отр_Чисел = Количество_Отр_Чисел+1 и

б) Сумма_Отр_Чисел = Сумма_Отр_Чисел + числоi

4.1 Если Количество_Пол_Чисел. > 0, то

Среднее_Пол_Чисел = Сумма_Пол_Чисел / Количество_Пол_Чисел

4.2 Если Количество_Отр_Чисел > 0, то

Среднее_Отр_Чисел = Сумма_Отр_Чисел / Количество_Отр_Чисел

 

Программа для этого алгоритма будет иметь вид

 

Program Count_sred;

Const

Nmax = 100;

Var

X: Array[1..Nmax] Of Real;

N, I, Ko, Kp: Integer;

So, Sp, Sro, Srp: Real;

Begin

Writeln('Введите количество чисел');

Readln(n);

Writeln('Вводите элементы массива');

For i: =1 To n Do

Read(X[i]);

Ko: =0;

Kp: =0;

So: =0;

Sp: =0;

For i: =1 To N Do

If X[i]> 0 Then

Begin

Kp: =Kp+1;

Sp: =Sp+X[i]

End

Else

If X[i]> 0 Then

Begin

Ko: =Ko+1;

So: =So+ X[i]

End;

If Ko< > 0 Then

Begin

Sro: = So/Ko;

Writeln('Количество отрицательных чисел = ', Ko);

Writeln('Сумма отрицательных чисел = ', So: 8: 2);

Writeln('Среднее отрицательных чисел = ', Sro: 8: 2);

End

Else

Writeln('В массиве нет отрицательных чисел.');

If Kp< > 0 Then

Begin

Srp: = Sp/Kp;

Writeln('Количество положительных чисел = ', Kp);

Writeln('Сумма положительных чисел = ', Sp: 8: 2);

Writeln('Среднее положительных чисел = ', Srp: 8: 2);

End

Else

Writeln('В массиве нет положительных чисел.');

End.

 

11. Особенности алгоритмов и программ
с накапливанием

 

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

1) Сумма вычисляется по формуле

сумма: = cумма + очередное слагаемое;

Перед вычислениями начальному значению суммы нужно присвоить ноль.

2) Произведение вычисляется по формуле

произведение: = произведение * очередной сомножитель

Перед вычислениями начальному значению произведения нужно присвоить 1.

3) Подсчет количества выполняется по формуле, подобной формуле для вычисления суммы:

количество: = количество + 1

Начальное значение количества должно быть = 0.

 







Дата добавления: 2014-12-06; просмотров: 600. Нарушение авторских прав; Мы поможем в написании вашей работы!




Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


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


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Различие эмпиризма и рационализма Родоначальником эмпиризма стал английский философ Ф. Бэкон. Основной тезис эмпиризма гласит: в разуме нет ничего такого...

Сосудистый шов (ручной Карреля, механический шов). Операции при ранениях крупных сосудов 1912 г., Каррель – впервые предложил методику сосудистого шва. Сосудистый шов применяется для восстановления магистрального кровотока при лечении...

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Мелоксикам (Мовалис) Групповая принадлежность · Нестероидное противовоспалительное средство, преимущественно селективный обратимый ингибитор циклооксигеназы (ЦОГ-2)...

Studopedia.info - Студопедия - 2014-2026 год . (0.014 сек.) русская версия | украинская версия