ИНФОРМАТИКА 9 КЛАСС Ничего не понимаю:((
1. Запишите программную строку для описания целочисленного массива по имени ABS состоящего из 15 элементов.
2. Запишите программную строку для организации цикла с параметром i, изменяющегося от 2 до 25.
3. Запишите программную строку для организации цикла с параметром i, изменяющегося от 20 до 10.
4. Если тело цикла содержит более одной команды то такое цикл называется : встроенным составным/вложенным.
5. Запишите программную строку выводящую на экран значение переменной T как смешанное число в 7 позиций, три последних из которых занимает дробная часть.
6.Запишите стандартную функцию позволяющую получить случайное число в интервале от 0 до 100.
Заранее

armodno armodno    1   19.04.2020 08:20    5

Ответы
blazer6 blazer6  28.08.2020 09:27

Оператор цикла с параметром

Здравствуйте. Оператор цикла с параметром используется в тех случаях, когда некоторое однообразное действие надо повторить определенное количество раз. Особенно, если это количество достаточно велико. Бывают же такие задачи, когда необходимо, например, вычислить сумму каких-либо величин, каждая из которых вычисляется по формуле. Ведь если непосредственно вычислять сумму 1 + 2 + 3 + ... + 1000, то программа разрастется до невообразимых масштабов.

Оператор цикла с параметром в народе ещё называют "оператор For", и в Pascal он бывает двух типов (второй тип смотрите ниже). Первый записывается так:

for i := N1 to N2 do

<ОПЕРАТОР>

Всё, что находится между for и do, называется заголовком цикла, после do – телом цикла. Переменная i зазывается параметром цикла и имеет порядковый тип (целые числа, логический тип, символы, перечислимый и диапазонный тип). Слова for, to и do – это служебные слова Pascal, которые использовать в своих программах для обозначения переменных нельзя. Индекс i, которым обозначаются номера действий в операторе цикла, изменяется от меньшего N1 к большему N2 (N1 ≤ N2). Первый номер N1 по значению не должен превышать второй N2, иначе цикл не запустится и ОПЕРАТОР ни разу не выполнится.

Важно помнить: ИЗМЕНЯТЬ ПАРАМЕТР ЦИКЛА i В ТЕЛЕ ЦИКЛА НЕЛЬЗЯ! — это вызовет ошибку.

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

— сначала индекс i приравнивается N1 – минимальному возможному значению;

— потом проверяется, не превышает ли i второго номера N2 (i ≤ N2). Если это условие выполняется, то идем на следующий пункт, иначе (то есть при i > N1) – выходим из цикла;

— выполняется ОПЕРАТОР в теле цикла;

— далее увеличивается i на 1, и повторяем со второго пункта (т.е. проверяем истинность условия i ≤ N2, выполняем оператор, увеличиваем i на 1, и т.д).

В роли начального значения N1 наиболее часто используют 1 или 0 (это зависит от задачи).

Приведем пример с вычислением упомянутой ранее суммой 1 + 2 + 3 + ... + 1000 первых 1000 натуральных чисел. Поскольку нужно сложить числа от 1 до 1000 включительно, то было бы естественно изменять индекс i от 1 до 1000. Тогда на каждой итерации цикла (при каждом выполнении) искомую сумму, которую мы обозначим sum, будем увеличивать на i. Вот, что у нас получится.

Посчитать сумму первых 1000 натуральных чисел

Код Pascal

1

2

3

4

5

6

7

8

9

10

var

i, sum: integer;

begin

sum := 0; //Начальное значение суммы

for i := 1 to 1000 do

sum := sum + i; //К сумме прибавляем i

writeln('Результат: ', sum);

readln

end.

После запуска программы вы должны увидеть результат: 500500. Что делает наша программа?

2 строка. Описываем переменные i (параметр цикла) и sum (конечная сумма) как целые;

5 строка. Начальному значению суммы sum присваиваем 0. Это называется инициализация начальной переменной;

6 строка. Числа будем складывать от 1 до 1000;

7 строка. На каждой последующей итерации цикла к сумме прибавляем i;

8 строка. После выхода из цикла (когда будет i = 1000) выводим конечный результат суммы.

Решим ещё одну простенькую задачку:

Напечатать ряд чисел 20 в виде: 20 20 20 20 20 20 20 20 20 20.

Код Pascal

1

2

3

4

5

6

7

var

i: byte;

begin

for i := 1 to 10 do write(' ', 20);

readln

end.

Мы видим, что количество выводимых чисел равно 10, поэтому запускаем цикл от 1 до 10, и выводим число 20 оператором вывода write(). Обратите внимание, что величина индекса изменяется лишь в пределах [1, 10], поэтому не имеет смысла использовать целый тип integer – достаточно обойтись типом byte (8 бит, или 1 байт). Особенность этого примера в том, что код программы не содержит переменной i в теле цикла (напоминаю, тело цикла – часть программы после do) – мы просто выводили несколько раз число 20. Бывает, когда параметр цикла используется в теле цикла, но во многих простеньких программах его использование лишнее.

А вот пример простой задачи, когда параметр цикла используется:

Напечатать "столбиком" все целые числа от 12 до 25.

Если промежуточное выводимое число обозначить n, то изменяя его с 12 по 25 включительно, выведем все числа. Только здесь нужно задействовать оператор вывода writeln – с переводом курсора на следующую строку.

Код Pascal

1

2

3

4

5

6

7

var

n: byte;

begin

for n := 12 to 25 do writeln(n);

readln

e

begin

sum := 0; //Начальное значение суммы

for i := 1000000 downto 1 do

sum := sum + 1/i; //К сумме прибавляем 1/i

writeln('Результат: ', sum);

readln

end.

А вот как эта задача решается с циклом первого типа, посмотрите на странице for 10-14. Только нужно иметь ввиду, что, хотя гармонический ряд и является расходимым – его частичные суммы стремятся к бесконечности при неограниченном возрастании членов) – но растет гармонический ряд очень медленно.

Вообще, в каждом отдельном случае нужно решать, какой цикл с параметром использовать лучше – с возрастающим или убывающим параметром. В разделе Задачника в группе "for" есть много примеров на тему цикла с параметром, например, Функции с использованием факториала. А пока на этом все, если есть вопросы или пожелания, пишите в комментариях.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Другие предметы