русс | укр

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

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

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

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


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

Задание 3. Циклические вычислительные процессы.


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


 

Вариант 17.

Даны массивы Ai , i=1,…,10 и Bj , j=1,…,15. Найти максимальные элементы массивов Amin и Bmin. Определить, какой из Amin или Bmin больше по абсолютной величине.

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

 

Решение

Нахождение минимального элемента массива A выполняется в цикле путем сравнения текущего элемента массива с минимальным из всех предыдущих. Для выбора внутри цикла используется следующая формула

.

Перед началом цикла задается начальное значение Amin=A1, и поиск в цикле начинается со второго элемента.

Аналогично вычисляется и Bmin.

Схема будет содержать два цикла: первый по параметру i от 2 до 10 с шагом 1, второй по параметру j от 2 до 15 с шагом 1. В результате работы первого цикла будет вычислен Amin, в результате работы второго - Bmin. Схема вычислений приведена на рис. 11.

Составим программу вычисления на алгоритмическом языке Fortran.

Исходные данные – массивы Ai , i=1,…,10. и Bj , j=1,…,15 состоят из переменных вещественного тип, значения которых зададим самостоятельно. Первым оператором программы будет оператор DIMENSION, который объявит массивы и укажет их максимальный размер.

Для ввода исходных данных (общее количество элементов массивов равно 25) используем невыполняемый оператор DATA. Результаты выведем на дисплей под управлением списка.

Циклы организуем с помощью структурного оператора цикла. Для выбора минимальных элементов внутри циклов Amin и Bmin и сравнения их по абсолютной величине используем логический оператор IF.

Как и в примере 2 для “читаемости” снабдим программу комментариями.

 

 

Рис. 11. Схема вычисления Amin , Bmin и анализ их значений по абсолютной величине.

 

Текст программы на алгоритмическом языке Fortran



 

* Поиск минимальных элементов в массивах A, B и их сравнение

* по абсолютной величине

DIMENSION A(10),B(15)

* Ввод массивов

DATA A/-20.42,-11.80,-19.90,44.86,47.98,-9.86,-22.17,

* -33.96,-33.72,14.66,/,

* B/-13.50,-1.01,-34.43,-2.55,-24.27,12.88,

* 4.21,-34.37,43.85,15.45,0.61,-10.95,-39.26,28.40,-4.04/

* Задание начальных значений

Amin = A(1)

Bmin = B(1)

* Организация цикла по параметру I.

DO I = 2,10

* Выбор минимального элементов массива A и сохранение в Amin

IF(A(I) < Amin )THEN

Amin = A(I)

ENDIF

ENDDO

* Организация цикла по параметру J.

DO J = 2,15

* Выбор минимального элементов массива B и сохранение в Bmin

IF(B(J) < Bmin)THEN

Bmin = B(J)

ENDIF

ENDDO

* Печать Amin и Bmin

WRITE(*,*)’ Amin=’,Amin,’ Bmin=’,Bmin

* Сравнение |Amin| и |Bmin|

IF(ABS(Amin) > = ABS(Bmin))THEN

WRITE(*,*)’ |Amin| больше или равен |Вmin|’

ELSE

WRITE(*,*)’ |Bmin| больше |Amin|’

ENDIF

END

 

 

Текст программы на алгоритмическом языке Basic. Массивы A и B определены явно и имеют тип Single (действительные числа с обычной точностью). Остальные переменные имеют тип Variant. Ввод данных в массивы А и В осуществляется в использование оператора DATA непосредственно из программы. Вывод производится на экран дисплея осуществляется под управлением списка.

 

‘ Вычисление количества положительных элементов в массивах

DIM A(10) as Single, B(15) as Single

‘ Ввод массивов

DATA -20.42,-11.80,-19.90, 44.86, 47.98,-9.86,-22.17,-33.96,-33.72,

14.66,-8.99,-8.72,21.27,-17.38,13.32,-29.24,-31.40,8.34,-41.93,

-4.20,40.57,-23.86, 28.52,-12.11,-21.03

FOR I = 1 TO 10

READ A(I)

NEXT I

FOR J = 1 TO 15

READ B(J)

NEXT J

‘ Задание начальных значений

Amin = A(1)

Bmin = B(1)

‘ Организация цикла по параметру I. Выбор Amin

FOR I = 2 TO 10

‘ Выбор минимального элементов массива A и сохранение в Amin

IF(A(I) < Amin )THEN

Amin = A(I)

ENDIF

NEXT I

‘ Организация цикла по параметру J. Выбор Bmin

FOR J = 2 TO 15

‘ Выбор минимального элементов массива B и сохранение в Bmin

IF(B(J) < Bmin)THEN

Bmin = B(J)

ENDIF

NEXT J

‘ Печать Amin и Bmin

PRINT ’ Amin=’,Amin,’ Bmin=’,Bmin

‘ Сравнение |Amin| и |Bmin|

IF(ABS(Amin) > = ABS(Bmin))THEN

PRINT ’ |Amin| больше или равен |Вmin|’

ELSE

PRINT ’ |Bmin| больше |Amin|’

ENDIF

END


 



<== предыдущая лекция | следующая лекция ==>
Задание 2. Разветвляющиеся вычислительные процессы. | Таблицы заданий контрольной работы


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


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

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

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


 


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

 
 

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

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