Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[11]

условия

Оператор цикла с предусловием:

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

Приведем пример блок - схемы комбинированного алгоритма для расчнета суммы положительных S1 и отрицательных S2 чисел из N случайных чисел от -100 до 100.

Randomize; S1:=0; S2:=0;

i:= i + 1;

x:= Random(201) - 100;

S2:= S2 + x;

да нет

S1:= S1 + x;

Соответствующие алгоритму операторы имеют вид: Begin Randomize;

\Угне1п(Введите количество случайных чисел); Readln(N);

S1:=0; S2:=0; For i:=1 to N do begin x:=Random(201)-100;

if x<0 Then S2:=S2+x else S1:=S1+x end; Write1n(S1= S1, S2= S2); Readln End.


1. 9. Составление диалоговых программ

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

PROGRAM NUMBER;{ угадать случайное число }

Var I, N, N1: integer; BEGIN

Randomize;N1:= Random(12) + 5;

for i:= 1 to 5 do begin

Write(угадайте число от 5 до 16 N=); readln(N); IF N<>N1 then begin Writeln(He угадал);

Writeln(осталось 5-i, попыток) end else begin Writeln(угадал); Writeln(Нажмите Enter); readln; Haltend

end; Writeln( Нажмите Enter); readln;

Определение формулы для "N1" производится по следующему алгоритму. Пусть дано N Min и N Max - интервал изменения N1, тогда случайное значение

N1:= Random(A) + B; где B:= N Min; A:= N Max - N Min + 1;

Практическое задание N 1. 17

Составьте диалоговые программы:

1.Угадывания случайно выбранных координат цели в квадрате: по оси "х" от 3 до 7, по оси "у" от -4 до 2 с пяти попыток с сообщением корректировщика, например: уменьшить "Х", увеличить "Y".

2.Угадывания случайно выбранных координат цели в квадрате: по оси "х" от -10 до 30, по оси "у" от 2 до 28 с восьми попыток с двойным сообщением корректировщика, например: уменьшить "Х", либо: немного уменьшить "Х" (если отклонение от цели меньше 3).

3/4. Выбора пути при наличии на указателе трех, либо четырех вариантов согласно приведенному ниже рисунку. Программа должна пригласить на прогрулку, а в случае согласия предложить на выбор варианты движения и в зависимости от введенного номера выдать сообщение, например: " Бац! Тебя предупреждали!" и т. п.

Богатство

Голову потеряешь

♦ 2

Счастье


1. 10. Массивы

Массив - упорядоченные данные одного типа. Возможно создание массива, включающего массив другого типа. Массивом часто обозначают характеристики объектов одного типа, имеющих одинаковые единицы измерения. Массив состоит из элементов, имеющих порядковые номера, т. е. элементы массива упорядоченны. Таким образом, если объекты одного типа обозначить именем, например "А", то элементы объекта будут A[1], A[2] и т. д. В квадратных скобках указан номер элемента. Порядковый номер элемента массива, обычно не несет никакой информации о значении элемента, а показывает расположение элемента среди других. К элементам массива можно обращаться только по их номеру (индексу). Значения элементам массива присваиваются также как и другим переменным с учетом типа массива. Если элементы массива имеют один индекс, то массив называется одномерным или линейным, либо массив - вектор. Значения элементов одномерного массива обычно выводят на экран или бумагу в виде столбца или строки. В некоторых случаях удобно элементы массива пронумеровывать двуми независимыми индексами, такие массивы называются двумерными или матрицами. Значения элементов двумерного массива обычно выводят на экран в виде таблицы. Если элементы массива имеют три независимых индекса, то массив называется трехмерным. Значения элементов трехмерного массива обычно выводят на экран в виде набора таблиц.

1. 10. 1. Линейные массивы

Линейным массивом можно обозначить, например, оценки учеников класса. Каждая оценка является значением элемента массива оценок "A" и имеет порядковый номер (индекс). В Турбо- Паскале значение индекса указывается в квадратных скобках после имени массива. Можно создать массив фамилий "S" учеников класса. Значением элемента массива будет фамилия ученика, а индексом - порядковый номер по списку. Пусть дан список фамилий учеников и их оценки:

Фамилии ,

Сидоров

Описание массивов: Var A: array[ 1. . 30 ] of byte;

S: array[ 1. . 30 ] of string; {или} SO: array[ 1. . 30 ] of string[12];

Присвоение значений элементам массива:

"A" - A[1]:= 5;A[2]:= 4;и т. д.

"S " - S[1]:= Иванов; S[2]:= Петров; и т. д.

Приведем таблицу обозначений и соответствия элементам массива, их значений и ин-

дексов:

Номер элемента (индекс)

Элементы массива "S "

Значения элементов

S[ 2 ] Петров

S[ 3 ] Сидоров Ти

S[ 4 ] тов . .

. Яку

S[ 30 ] пов

Элементы массива "A "

A[ 30 ]



[стр.Начало] [стр.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] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51] [стр.52] [стр.53]