TURBO PASCAL

Новости       

Программы

Turbo Pascal

Игры

Документация

"Странности"

FAQ

Ссылки

Благодарности 

Гостевая книга

Спонсор

От автора

Программа сравнения в заданной вещественнозначной матрице A (20x20) максимума по четным строкам с минимумом по нечетным.

Program pr30 (Input, Output);         

Объявление имени программы

Label 1; 

Блок объявления меток: задаем метку 1

Var         

Блок объявления глобальных переменных

A            : Array [1..20, 1..20] Of Real;            

Переменная A - матрица действительных чисел максимального размера 20x20

M, N       : Integer;              

M - число столбцов, а N - число строк вводимой матрицы

i, j            : Integer;              

Переменные i, j - параметры циклов

Min, Max              : Real;    

Min - минимум по нечетным строкам, Max - максимум по четным

 

 

Begin    

Начало тела программы

 

 

WriteLn

Формулировка цели алгоритма

('PASCAL: Сравнение максимума по четным строкам с минимумом по нечетным.');     

Формулировка цели алгоритма

Write ('Введите число строк:  N = ');             

Вывод запроса N - числа строк исходной матрицы

ReadLn (N);         

Ввод N

Write ('Введите число столбцов: M = ');      

Вывод запроса M - числа столбцов исходной матрицы

ReadLn (M);        

Ввод M

WriteLn ('Введите элементы матрицы:');    

Запрос ввода элементов самой исходной матрицы

For i := 1 To N Do              

Цикл для i от 1 до N, где i - номер очередной строки

For j := 1 To M Do             

Цикл для j от 1 до M, где j - номер очередного столбца

Begin    

Начало тела цикла

Write ('A[', i, ',', j, '] = ');      

Вывод удобной подсказки

ReadLn (A [i, j] );

Ввод очередного элемента - A[i,j]

End;      

Конец тела цикла

 

 

Min := A [1, 1];   

Начальное значение минимума по нечетным - 1-ый элемент 1-ой строки

Max := A [2, 1];   

Начальное значение максимума по четным - 1-ый элемент 2-ой строки

 

 

For i := 1 To N Do              

Цикл для i от 1 до N, где i - номер строки

For j := 1 To M Do             

Цикл для j от 1 до M, где j - номер столбца

Begin    

Начало тела цикла

If Odd (i) Then    

Проверяем число i на четность - если оно четное, то выполнять...

Begin    

Начало блока, выполняющегося при соблюдении условия

If A [i, j] < Min Then         

Если элемент A[i,j] меньше Min, то...

Min := A [i, j];     

Заносим элемент A[i,j] в Min

End        

Конец условного блока

Else       

При нарушении условия...

Begin    

Начало блока, выполняющегося при нарушении условия

If A [i, j] > Max Then         

Если элемент A[i,j] больше Max, то...

Max := A [i, j];     

Заносим элемент A[i,j] в Max

End;      

Конец условного блока

End;      

Конец тела цикла

 

 

If Abs (Max - Min) < 0.0001 Then   

Если  Max и Min отличаются на 0.0001, т.е. практически равны, то...

Begin    

Начало условного блока

WriteLn ('Максимум и минимум совпадают и равны: ', Max: 6: 2);            

Вывод сообщения пользователю о совпадении максимума и минимума

Goto 1;  

Переход на метку 1

End;      

Конец условного блока

 

 

If Max > Min Then             

Если максимум больше минимума, то выполнять...

WriteLn ('Наибольшим является максимум по четным строкам: ', Max: 6: 2);        

Вывод соответствующего сообщения

Else       

В противном случае

WriteLn ('Наибольшим является минимум по нечетным строкам:', Min: 6: 2);     

Вывод соответствующего сообщения

 

 

1: ReadLn;           

Метка 1: ожидание нажатия клавиши Enter для завершения

End.       

Конец программы.

 

На первую страницу

Rambler's Top100 PROext: Top 1000
Rambler's Top100

(с) Все права защищены.

По всем интересующим вопросам прошу писать электронный адрес

Hosted by uCoz