Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Var A: array[1..30,1..30] of integer;
I,J: integer;
K1,L1,K2,L2: integer;
T,M,N: integer;
Begin
Readln(M,N);
For I:=1 to M do
For J:=1 to N do
Readln(A[I,J]);
K1:=1;L1:=1; {координаты максимального элемента}
K2:=1;L2:=1; {координаты минимального элемента}
I:=2;
While I<=M do
Begin
For J:=1 to N do
If A[K1, L1]< A[I,J] then
Begin
K1:=I;L1:=J;
End
Еlse
If A[K2, L2]> A[I,J] then
Begin
K2:=I;L2:=J;
End;
I:=I+2;
End;
T:= A[K1, L1];
A[K1, L1]:= A[K2, L2];
A[K2, L2]:=T;
For I:=1 to M do
Begin
For J:=1 to N do
Write (A[I,J]:6);
Writeln;
End;
End.
Здесь используется цикл WHILE для индексации строк, т.к. нас интересуют только четные строки, следовательно, шаг для строк должен быть равен 2. В цикле FOR этого сделать нельзя.
В языке Турбо Паскаль 7.0 имеются процедуры BREAK и CONTINUE. Эти процедуры могут использоваться только внутри циклов FOR, WHILE или REPEAT. Процедура BREAK прерывает выполнение цикла и вызывает переход к оператору, следующему за циклом (может использоваться вместо оператора GOTO).Процедура CONTINUE осуществляет переход к следующему повторению цикла с пропуском последующих операторов тела цикла.
Например, необходимо определить номер первого элемента одномерного массива, оканчивающегося на 3.
Program Kon;
Var A:array [1.. 30] of integer;
FL: Boolean;
I,N: Integer;
Begin
Readln(N);
For I:=1 to N do
Readln(A[I]);
FL:=false;
For I:=1 to N do
Begin
If A[I] mod 10 <> 3 then Continue;
Writeln(‘Номер первого числа на 3 ’,I);
FL:=true;
Break;
End;
If not FL then Writeln(‘ нет чисел на 3‘);
End.
Если встречается число, оканчивающееся на 3, происходит вывод сообщения об этом, флаг – переменная FL – становится равным TRUE и программа заканчивает свою работу, т.к. цикл прерывается. Если же такое число не встречается, происходит нормальное завершение цикла, переменная FL остается равной FALSE и выводится сообщение о том, что таких чисел нет.
Вопросы к главе 2.
1. Дать определение языка программирования.
2. Дать классификационную характеристику языков программирования.
3. Определить особенности языков высокого уровня.
4. Назначение и особенности машинно-ориентированных языков программирования.
5. Основные особенности языка Турбо Паскаль.
6. Алфавит языка Турбо Паскаль.
7. Особенности построения арифметических, строковых и логических выражений в Паскале.
8. Приоритет выполнения операций в выражениях различного типа.
9. Классификация типов данных.
10. Описание типизированных констант.
11. Описание нетипизированных констант.
12. Описания целых типов.
13. Описания вещественных типов.
14. Что такое идентификатор?
15. Описание интервальных типов.
16. Описание перечисляемых типов.
17. Какую структуру имеет программа на Турбо Паскале?
18. Способы написания комментариев в Турбо Паскале.
19. Что такое пустой оператор?
20. Что такое операторные скобки?
21. Что такое составной оператор?
22. Назначение и особенности использования оператора безусловного перехода.
23. Способы записи условного оператора.
24. Назначение и варианты использования оператора выбора.
25. Форма записи меток варианта.
26. Формы оператора цикла.
27. Принципы выбора типа оператора цикла.
28. Особенности записи и использования оператора цикла типа арифметической прогрессии.
29. Особенности записи и использования оператора цикла итерационного типа с предусловием.
30. Особенности записи и использования оператора цикла итерационного типа с постусловием.
31. Особенности организации вложенных циклов.
Дата публикования: 2014-11-04; Прочитано: 242 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!