сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Формат записи цикла:

1) for i:= 1 to n do s1;

2) for i:= 3 to 10 do s1;

3) for i := a to b do s1;

4) for i := a to b do
begin

Пример:
Составить программу вывода на экран чисел от 1 до 10.

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Программный код:
Program Problem; <Вывод чисел>
var i : integer;
begin
for i:=1 to 10 do
writeln (i);
redaln;
end.

Пример:
Составить программу вычисления факториала числа n, т. е. n!. (0! = 1)

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Существует другая форма оператора цикла For:
Формат записи цикла:

Пример:
Возможны такие записи оператора цикла:

1) for i:= n downto 1 do s1;

2) for i:= 10 downto 3 do s1;

3) for i := b downto a do s1; (при условии, что b>a)

4) for i := b downto a do
begin

end; (при условии, что b>a)

Пример: Программу вычисления факториала числа можно составить, используя этот оператор цикла.

Источник

Мини-викторина по теме: «Программирование циклических алгоритмов»

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Описание презентации по отдельным слайдам:

«Программирование циклических алгоритмов» Викторина по теме: МБОУ «Центр образования с. Мейныпильгыно» Подготовила: учитель информатики Федорова М.А. 8 класс

Вопрос 1 С какого служебного слова начинается запись цикла с параметром на языке Pascal? Внимание! Правильный ответ: 3 б. for

Вопрос 2 Сколько раз выполнится тело цикла с повторением, при параметре равном конечному значению? Внимание! Правильный ответ: 3 б. 1 раз

Вопрос 3 Сколько раз выполнится тело цикла в фрагменте программы для определения того, является ли слово палиндромом: Правильный ответ: 4 б. 2 раза p: = true; s: = “казак”; for i:=1 to length (s) div 2 do If s [i]<>s [length(s) – i + 1] then p:=false;

Вопрос 4 Какое условие цикла в этом фрагменте программы для расчёта наименьшего общего кратного натуральных чисел a и b: Правильный ответ: 5 б. ((nok mod a)=0) and ((nok mod b)=0) if a>b then nok:=a-1 else nok:=b-1; repeat nok:= nok + 1; until ;

Вопрос 5 Какое служебное слово следует в цикле с убывающим значением параметра, между его начальным и конечным значением? Внимание! Правильный ответ: 4 б. downto

Вопрос 6 Какое служебное слово следует в цикле с возрастающим значением параметра, между его начальным и конечным значением? Внимание! Правильный ответ: 4 б. to

Вопрос 7 Какое условие цикла в этом фрагменте программы для расчёта наименьшего общего кратного натуральных чисел a и b: Правильный ответ: 5 б. ((nok mod a)<>0) or ((nok mod b)<>0) if a>b then nok:=a else nok:=b; while do; nok:=nok + 1;

Вопрос 9 Какое конечное значение параметра в данном цикле вычисления n! : Правильный ответ: 4 б. n f: = 0; for i:=1 to do f: = f + 1;

Вопрос 10 Как называется цикл, записанный внутри другого цикла? Внимание! Правильный ответ: 3 б. Вложенный

А теперь подведём итоги

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Курс повышения квалификации

Дистанционное обучение как современный формат преподавания

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Курс профессиональной переподготовки

Информатика: теория и методика преподавания в образовательной организации

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Курс профессиональной переподготовки

Математика и информатика: теория и методика преподавания в образовательной организации

Онлайн-конференция для учителей, репетиторов и родителей

Формирование математических способностей у детей с разными образовательными потребностями с помощью ментальной арифметики и других современных методик

Международная дистанционная олимпиада Осень 2021

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Номер материала: ДБ-514232

Не нашли то что искали?

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Путин назвал уровень доходов преподавателей одним из социальных приоритетов

Время чтения: 1 минута

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

В пяти регионах России протестируют новую систему оплаты труда педагогов

Время чтения: 2 минуты

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Россия воссоздаст центр подготовки учителей русского языка для Европы на базе РГПУ

Время чтения: 1 минута

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Путин поручил сократить количество контрольных работ в школах

Время чтения: 1 минута

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

МГУ стал лучшим вузом России в рейтинге QS по трудоустройству выпускников

Время чтения: 2 минуты

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Школы с 2023 года будут применять только государственные ресурсы в дистанционном обучении

Время чтения: 2 минуты

Подарочные сертификаты

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

Все материалы, размещенные на сайте, созданы авторами сайта либо размещены пользователями сайта и представлены на сайте исключительно для ознакомления. Авторские права на материалы принадлежат их законным авторам. Частичное или полное копирование материалов сайта без письменного разрешения администрации сайта запрещено! Мнение администрации может не совпадать с точкой зрения авторов.

Источник

Программирование циклов: циклы с заданным числом повторений

Урок 25. Информатика 10 класс (ФГОС)

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

В данный момент вы не можете посмотреть или раздать видеоурок ученикам

Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет, приобрев в каталоге.

Получите невероятные возможности

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Конспект урока «Программирование циклов: циклы с заданным числом повторений»

Сегодня мы рассмотрим, как на языке Pascal программируются циклы с заданным числом повторений. Как ясно из названия, особенность цикла с заданным числом повторений состоит в том, что прежде чем приступить к выполнению цикла в программе уже вычислено, сколько раз выполнится тело цикла. Цикл с заданным числом повторений является частным случаем цикла с параметром.

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Блок-схема цикла с параметром

В блоке цикла с параметром задаётся название параметра – i, его начальное и конечное значение, а также шаг его изменения – h не равный нулю. Цикл с параметром работает так, что перед первым выполнением цикла вычисляются начальное и конечное значение параметра. После этого параметру присваивается его начальное значение и проверяется, в случае h > 0, не больше ли значение параметра – i заданного конечного значения. В случае h 0 – больше, а при h := to do

Запись цикла с заданным числом повторений

Решим несколько задач, используя цикл с заданным числом повторений. Вычислим факториал натурального числа n n!. n вводится с клавиатуры и находится в диапазоне от 1 до 12. Вспомним, что n! = 1 × 2 × … × n. Таким образом, для того, чтобы вычислить значение n! нам достаточно перемножить все целые числа от 1 до n.

Составим блок-схему алгоритма решения задачи. В начале пользователь задаёт с клавиатуры значение n. Нам понадобится переменная, которая будет хранить значение вычисляемого произведения. Назовём её f и присвоим ей значение 1, так как ни одного множителя мы ещё не учли. Дальше будет следовать блок цикла с параметром. Назовём параметр i, и он будет изменяться от 1 до n. Так как шаг изменения параметра равен 1, его указывать не нужно. i будет значением очередного множителя нашего произведения f. Поэтому тело цикла будет содержать всего один оператор присваивания f= f × i. После цикла нам остаётся лишь вывести значение вычисленного произведения f. На этом наш алгоритм завершит свою работу.

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Блок-схема алгоритма решения задачи

Напишем программу по составленной блок-схеме. Назовём её factorial. Для работы программы нам потребуется три переменные: n, i и f. Так как n находится на промежутке от 1 до 12, а i изменяется на промежутке от 1 до n, объявим их принадлежащими к типу byte. f – это произведение значений i поэтому она будет принадлежать к целочисленному типу integer. Запишем логические скобки. Тело программы будет начинаться с оператора writeln, который выводит на экран сообщение о том, что это программа, вычисляющая значения n!. Дальше будет следовать оператор write, выводящий запрос на ввод n и оператор readln, считывающий значение n введённое пользователем. Теперь запишем оператор присваивания переменной f значения 1. Дальше запишем цикл с параметром for i:=1 to n do. Так, как тело цикла будет содержать всего один оператор, логические скобки указывать не требуется. Запишем в цикле оператор присваивания f:=f*i. После цикла запишем оператор вывода на экран сообщение о том, что n! = f.

writeln (‘Программа вычисления n!’);

Программа для решения задачи

Запустим программу на выполнение и зададим n = 5. 5! = 120.

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Снова запустим программу на выполнение и зададим n = 7. 7! = 5040.

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Программа работает правильно. Задача решена.

Решим ещё одну задачу. Трамвайный билет имеет номер, состоящий из девяти цифр. Определить, является ли трамвайный билет счастливым, по введённому номеру. Счастливым называется билет с номером, сумма первых четырёх цифр которого равна сумме последних четырёх цифр.

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Для решения этой задачи будем последовательно рассматривать цифры номера билета справа налево, рассчитывая при этом сначала сумму последних четырёх цифр, а потом и первых четырёх. В конце нам останется лишь сравнить две полученные суммы.

Составим блок-схему алгоритма решения этой задачи. В начале пользователь задаёт номер билета. Для хранения номера билета будем использовать целочисленную переменную n. Так как значения сумм цифр мы ещё не рассчитывали, присвоим им, то есть переменным s1 и s2 значение 0. Теперь будет следовать цикл для i, изменяющегося от 1 до 4, по количеству цифр, для вычисления одной суммы. Внутри цикла мы будем увеличивать значение первой суммы, которое мы будем хранить в переменной s1, на значение правой цифры числа n. Как мы помним, чтобы выделить правую цифру числа, нам нужно найти остаток от его деления на 10. После того, как мы учли правую цифру, нам нужно убрать её из числа. Для этого достаточно n без остатка разделить на 10. Так по завершении работы цикла мы рассчитаем значение s1 и вычеркнем четыре правых цифры из числа. Следующая правая цифра не входит не в первую не во вторую сумму. Поэтому мы просто убираем её нигде не учитывая. Дальше будет следовать ещё один цикл для i, изменяющегося от 1 до 4, по количеству оставшихся цифр. В нём мы будем увеличивать значение второй суммы, которую мы будем хранить в переменной s2, на следующую правую цифру числа. После этого мы снова будем убирать из числа правую цифру. После второго цикла запишем блок ветвления с условием s1 = s2. Если это условие выполняется – билет является счастливым, и мы выведем сообщение об этом, в противном случае – билет не является счастливым, и мы также выведем сообщение об этом.

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Блок-схема алгоритма решения задачи

Напишем программу по составленной блок-схеме. Назовём её bilet. Для работы программы на потребуется четыре переменные. Переменная n будет хранить номер билета, представленный девятизначным числом и будет принадлежать к целочисленному типу integer. Переменные s1 и s2, будут хранить в себе суммы четырёх цифр, а также переменная i, изменяющаяся в пределах от 1 до 4 будут принадлежать к целочисленному типу byte, так как для их хранения достаточно чисел со значением от 0 до 255.

Запишем логические скобки. Тело программы будет начинаться с оператора writeln, выводящего на экран сообщение о том, что это программа, определяющая, является ли трамвайный билет счастливым и запрос на ввод девятизначного номера билета. Дальше будет следовать оператор readln, считывающий значение переменной n. Теперь запишем два оператора присваивания: s1:=0 и s2:=0. Дальше запишем цикл for i:=1 to 4 do. Так как этот цикл будет содержать больше одного оператора, запишем логические скобки. Между логическими скобками будет следовать оператор присваивания s1:=s1+n mod 10. Дальше уберём из числа правую цифру, разделив его на 10 с помощью операции целочисленного деления div. После цикла, вычислив значение первой суммы, уберём из числа n пятую цифру, разделив его без остатка на 10. Дальше будет следовать цикл для вычисления второй суммы. Просто скопируем цикл вычисления первой суммы и изменим в нём оператор присваивания переменной s1 суммы её значения и правой цифры числа n таким образом, чтобы на месте переменной s1 стала переменная s2. Теперь запишем условный оператор, проверяющий равны ли s1 и s2. После слова then запишем в нём оператор write, выводящий на экран сообщение, о том, что билет с указанным номером является счастливым. После else будет похожий оператор write, выводящий сообщение о том, что билет с указанным номером не является счастливым. Просто скопируем предыдущий оператор Вывода и добавим, частицу «Не» перед словом является.

writeln (‘Программа, определяющая, является ли трамвайный билет счастливым. Введите девятизначный номер билета.’);

Источник

Pascal | Лекция №4

Операторы циклов

Содержание:

Очень часто возникает необходимость выполнить один и тот же оператор (или группу операторов) несколько раз. Для этого в языке Pascal предусмотрены операторы циклов.

Циклом в программировании называют повторение одних и тех же действий (шагов). Последовательность действий, которые повторяются в цикле, называют телом цикла.

Существует несколько типов алгоритмов циклической структуры.

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

Этот оператор используют, когда количество повторений цикла известно заранее или необходимо изменять какую-либо величину на одно и то же значение в определенном диапазоне. Форма записи оператора:

For := To Do ;

Служебное слово To указывает направление изменения параметра – увеличение на 1 (начальное значение меньше конечного значения; если это условие не выполнится, оператор не выполнится ни разу). Если необходимо, чтобы параметр уменьшался на 1, то используется слово DownTo (начальное значение больше конечного значения). В качестве оператора можно использовать любой простой или составной оператор.

Пример: требуется вычислить суму целых чисел от M до N путем прямого суммирования. Здесь M и N – целые числа. Задачу можно сформулировать так:

сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению

Пример: в рассмотренной выше задаче можно складывать и в обратном порядке, т.е. от N до M (N / M). Для этого можно использовать второй вариант оператора цикла

При использовании оператора цикла For нужно помнить следующие правила:

Для каждого значения параметра между начальным значением и конечным оператор в теле цикла выполняется только один раз.

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

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

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

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

Последовательность операторов может состоять из одного или нескольких любых операторов. В отличие от цикла с предусловием, в этом цикле условие проверяется всегда после выполнения оператора (или последовательности операторов), если оно ложно – оператор снова выполняется, иначе цикл прекращается. При такой структуре, оператор хотя бы один раз обязательно выполнится.

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

При написании условных циклических алгоритмов следует помнить следующее:

Источник

Для параметра, принимающего значения от начального до конечного с шагом «единица», делай тело цикла

Механизм выполнения оператора:

1. Переменная-параметр принимает начальное значение;

2. Если значение параметра не превышает конечное, то выполняется серия операторов, обозначенных в теле цикла;

3. Переменная-параметр увеличивает свое значение на единицу;

4. Если значение параметра не превышает конечное, то выполняется серия операторов, обозначенных в теле цикла;

5. И так далее, пока переменная- параметр не примет конечное значение;

6. Когда переменная-параметр примет конечное значение, тело цикла выполнится в последний раз;

7. Выполняется оператор, следующий после цикла.

Особенности написания оператора цикла:

1. Переменная-параметр, начальное и конечное значения могут быть только целого типа;

2. Переменную-параметр цикла нельзя изменять внутри тела цикла;

Антипример1.

For i:=1 to k do begin i:=i-1; read(a); end;

На первом шаге цикла параметр примет начальное значение 1, но при выполнении тела цикла снова примет значение 0. На втором шаге значение параметра увеличится на 1 и станет равно 1. Сколько бы не выполнялось тело цикла, значение параметра не достигнет конечного значения, то есть программа будет бесконечно работать.

Антипример2.

For i:=1 to 10 do begin i:=i+1; а:=а+i; end;

Здесь параметр будет на каждом шаге дважды увеличивать свое значение: автоматически и внутри тела цикла. Поэтому, параметр никогда не достигнет конечного значения.

Можно привести массу примеров на этот счет.

Запомни главное! Параметр цикла отвечает за количество повторений его тела. Цикл с параметром используют, когда это количество известно. Так зачем намеренно изменять это количество.

3. Если тело цикла содержит только один оператор, то операторные скобки можно не писать;

Пример1. Вывести на экран свое имя 100 раз.

For i:=1 to 100 do Writeln(‘Имя’);

Пример2. Вывести на экран свое имя n раз.

Дано: n – число повторений (integer);

Writeln(‘Введите количество повторений’);

For i:=1 to n do Writeln(‘Имя’);

Пример3. Ввести с клавиатуры n целых чисел.

Дано: n – число повторений (integer);

Writeln(‘Введите количество повторений’);

For i:=1 to n do readln(x);

Эта задача не имеет наглядного результата, так как результатом является заполнение ячейки памяти. Зато она поможет в решении более сложных задач.

Пример4. Ввести n целых чисел с клавиатуры и найти сумму четных из них.

Дано: n – число повторений (integer);

Найти: sum – сумма четных чисел среди введенных (integer);

Writeln(‘Введите количество повторений’);

For i:=1 to n do begin

if x mod 2=0 then sum:=sum+x;

Writeln( sum,’-сумма четных чисел из ’,n,’ введенных’);

Пример5. Вывести на экран все трехзначные числа, кратные 15.

Решение: Все трехзначные числа находятся в промежутке от 100 до 999. Необходимо каждое из них проверить на кратность 15 и в случае истинности вывести на экран. Для проверки условия должен использоваться условный оператор. Условный оператор необходимо повторить столько раз, сколько чисел в промежутке от 100 до 999. Если использовать для повтора оператор цикла с параметром, то за начальное и конечное значения можно взять числа 100 и 999. Тогда переменная-параметр будет принимать значения из указанного диапазона – каждый раз новое значение. Эту переменную мы и будем проверять на кратность 15.

For i:=100 to 999 do if i mod 15=0 then Writeln( i);

4. Если необходимо вести отсчет шагов в обратном направлении, вместо служебного слова to используется служебное слово downto (шаг –1);

Пример. Найти сумму чисел из промежутка от a до b, где a и b целые числа.

Дано: a,b – целые числа, концы промежутка (integer);

Найти: sum – сумма целых чисел (integer);

Решение: Сумму чисел из указанного промежутка можно отыскать, опираясь на предыдущий пример. Трудность заключается в том, что в предыдущем примере концы промежутка были заданы в явном виде (100 и 999), а здесь это переменные величины. Если окажется что a>b, то отсчет придется вести в обратном направлении.

Writeln(‘Введите концы промежутка – два числа’);

If a>b then For i:= a downto b do sum:=sum+i

else For i:=a to b do sum:=sum+i;

Writeln(sum,’ –сумма чисел из промежутка от ’,a,’ до’,b);

Первый блок

¨ Назначение, формат, механизм выполнения и особенности написания оператора цикла с параметром.

§ Внимательно рассмотрите фрагмент программы и ответьте на вопросы:

For i:=1 to 20 do read(a); a:=a+1; write(a);

Какие операторы являются телом данного цикла?

Сколько раз выполнится тело цикла?

Сколько чисел будет выведено на экран?

§ Исправьте ошибки в программе и заполните предложенную таблицу значений после исправления.

Var i,n:real; a:integer;

For i:=1 to n do begin

§ Составить программу, печатающую на экране 25 раз фразу: «Привет! Я учусь в седьмом классе».

§ Составить программу, печатающую на экране числа от 1 до n.

· Составить программу, печатающую нечетные числа из промежутка от 1 до n.

· Составить программу вычисления факториала числа n. Факториалом числа n (n!) называют произведение целых чисел от 1 до n (1*2*3*..*n).

· Составить программу, находящую сумму четных чисел из промежутка от 1 до n.

¨ Вывести на экран все числа из промежутка от 1 до n, которые делятся на 2, 3 и 5.

¨ Составить программу, находящую сумму всех двузначных чисел.

Второй блок

· Заполнить таблицу значений, опираясь на фрагмент программы.

For i:=5 to 10 do begin

· Найти ошибки в программе:

For i:=1 downto b do begin

· Рассмотрите фрагменты программ и ответьте на вопрос: «Что будет выведено на экран?».

For a:=1 to n do begin

§ Составить программу, распечатывающую все трехзначные числа, у которых цифры расположены в порядке возрастания.

· Составить программу, распечатывающую все четырехзначные числа-«перевертыши» (2442 –«перевертыш»).

v Составить программу, распечатывающую таблицу умножения на заданное число а. Например, при а =5, на экране должно быть следующее:

Третий блок

§ Составить программу, которая запрашивает ввод десяти чисел.

§ Составить программу, которая запрашивает ввод десяти чисел и находит их сумму.

· Составить программу, которая среди n введенных чисел находит произведение нечетных.

¨ Составить программу, которая среди n введенных чисел считает количество чисел равных 0.

¨ Составить программу, которая запрашивает ввести n чисел и находит произведение тех из них, которые оканчиваются на 3.

· Составить программу, которая запрашивает количество учеников в классе, затем просит ввести рост каждого учащегося и находит средний рост.

§ Составить программу к решению задачи: «Вывести на экран ряд, в котором будут записаны степени числа 3, начиная с нулевой и заканчивая десятой».

· Составить программу, которая при заданном целом положительном числе а, находит сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению(не вводите большой показатель степени, помните о типах данных).

Четвертый блок

§ Составьте программу к задаче: «Соблюдая диету, человек в первый день сбросил 1 кг. Каждый последующий день он скидывал на 200 г больше, чем в предыдущий. Сколько человек потеряет в весе за неделю?».

· Составьте программу к задаче: «Первоначальная выручка предприятия за месяц работы равна х руб. Каждый месяц выручка возрастает на а% от выручки предыдущего месяца. Какова будет месячная выручка через k месяцев?».

· Составьте программу к задаче: «На весах стояло n гирь. Первая весила m г. Каждая следующая гиря на 15% тяжелее предыдущей. Найти общий вес гирь, средний вес гирь и самую тяжелую гирю».

¨ Составьте программу к задаче: «На яблоне было х яблок. В первый день с яблони упало а яблок. Каждый следующий день опадало в 2 раза больше яблок, чем в предыдущий. Сколько яблок останется через k дней?».

· Составить программу поиска трехзначного числа, которое кратно заданному числу m и, в котором цифры расположены по возрастанию. Если такого числа не существует, сообщите об этом.

v Составьте программу к задаче: «Мама дает ученику на карманные расходы а руб. в день. Ученик тратит b руб. Каждый день расходы его увеличиваются на 3% от расходов предыдущего дня. Сколько денег ему выпросить у папы, чтобы прожить 10 дней. Если денег просить не придется, то сообщите об этом».

Пятый блок

§ Составить программу, которая запрашивает ввести n чисел и находит среди них максимальное число.

· Составить программу, которая запрашивает ввести количество учеников в классе, затем рост каждого ученика, и определяет самый большой и самый маленький рост.

§ Составить программу, вычисляющую сумму сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению.

¨ Составить программу, вычисляющую сумму сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению, где знаменатель взят из промежутка от 1 до n.

· Составить программу, находящую сумму квадратов нечетных чисел среди чисел промежутка от 1 до n.

· Составить программу, вычисляющую значение дроби сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению, где используются числа из промежутка от 1 до n.

II. 13. Вложенные циклы

Рассмотрим фрагмент программы:

For i:=1 to 3 do begin

For j:=1 to 2 do x:=x+2*j;

В этом фрагменте присутствуют два цикла с параметрами: цикл по параметру i и цикл по параметру j.

Обратите внимание, что циклы будут выполняться не друг за другом!

Заметьте, что цикл по параметру j входит в тело цикла по параметру i.

! Цикл, входящий в тело другого цикла, называется вложенным.

! Цикл, в теле которого расположен другой цикл, называется внешним.

В нашем примере, цикл по параметру i – внешний, а цикл по параметру j – вложенный.

Проанализируем, как выполняется этот фрагмент программы.

1. Параметр i принял значение 1.

2. Начинает выполняться тело цикла по параметру i. В нем два оператора: цикл по параметру j и оператор присваивания.

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

ü Когда цикл по параметру j закончит свою работу будет выполняться оператор присваивания и переменная у получит значение 6.

3. Параметр i увеличивает свое значение на 1. Пункт 2 повторяется, но с учетом того, что переменные х и у уже имеют значения равные 6.

В результате получаем следующую таблицу значений:

Заметьте, что во внешнем цикле было 3 шага, а во внутреннем 2 шага, но тело цикла по параметру j выполнялось 2*3=6 раз.

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

Пример. Составить программу к задаче: «Человек купил лотерейный билет. Билет состоит из двух одинаковых частей. На каждой части 10 ячеек, покрытых оболочкой. Под оболочкой цифры от 0 до 9. Игрок может стереть оболочку только на одной из ячеек в первой части билета и на одной из ячеек во второй части. Задача игрока – набрать х баллов (от 0 до 18). Выяснить, какие могут быть варианты и сколько шансов на победу».

Дано: х – количество баллов (число от 0 до 18 – byte);

Найти: a, b – баллы в ячейках на первой и второй половине билета, дающие в сумме х очков (числа от 0 до 9 – byte);

k – количество шансов на победу (byte).

Переменная а содержит количество баллов в открытой игроком ячейке на первой половине билета, то есть может принимать значения от 0 до 9. При каждом значении переменной а переменная b (количество баллов в открытой игроком ячейке на второй половине билета) может принимать значения от 0 до 9. Перебирая варианты, необходимо проверять условие a+b=x. Только при истинности этого условия, нужно вывести значения соответствующих ячеек на экран и увеличить счетчик шансов на 1. Только после вывода всех подходящих вариантов следует вывести количество подсчитанных шансов на победу. Для перебора вариантов, нам понадобятся два цикла: внешний цикл с параметром а и вложенный цикл с параметром b. В теле цикла нам понадобится условный оператор, при истинности которого необходимо выводить пару значений (процедура вывода) и увеличивать счетчик шансов (оператор присваивания).

Writeln(‘Введите количество баллов победителя – от 0 до 18’);

For b:=0 to 9 do If a+b=x then begin

Writeln(‘У игрока ’,k, ‘шансов на победу’);

Первый блок

¨ Какой цикл называют вложенным? Расскажите механизм выполнения компьютером вложенных циклов.

¨ Для чего используют вложенные циклы с параметром?

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

For i:=1 to 3 do begin

For j:=1 to 3 do begin

For k:=1 to 2 do begin

§ Составить программу к задаче: «Сколько шансов при бросании двух игральных костей выбросить х очков (от 2 до 12) и какие это варианты».

· Составить программу к задаче: «Сколько шансов при бросании трех игральных костей выбросить х очков (от 3 до 18) и какие это варианты».

· Составить программу к задаче: «Необходимо перевезти груз через реку. Бочки весят 100 кг, ящики – 50 кг, а пакеты – 0.5 кг. Плот выдержит 1 тонну груза. Как укомплектовать плот, если требуется перевезти 100 предметов?».

¨ Составить программу к задаче: «В кассе остались купюры по 3 и 5 рублей. Кассиру необходимо выдать сумму s рублей (известно, что s>7). Какие могут быть варианты по количеству тех и других купюр?».

· Составить программу к задаче: «Долгожитель обнаружил, что если к сумме квадратов цифр его возраста прибавить число дня его рождения, то получится его возраст. Сколько ему лет?».

¨ Составить программу к задаче: «Числа a, b и c называются «пифагоровой тройкой», если выполняется условие сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Смотреть картинку сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Картинка про сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Фото сколько раз выполнится тело цикла с повторением при параметре равном конечному значению. Отыщите все «пифагоровы тройки» среди чисел от 1 до n».

Второй блок

¨ Составить программу к задаче: «Известно, что число 1?2?? ( знаки вопроса свидетельствуют о пропущенных цифрах) делится нацело на 37. Определите пропущенные цифры и распечатайте это число».

§ Составить программу печати трехзначных чисел, имеющих 10 делителей.

· Составить программу к задаче: «Число называется «совершенным» если оно равно сумме всех своих делителей включая 1, но, не включая само себя. Распечатайте все совершенные числа из промежутка от 1 до n».

· Составить программу к задаче: «Распечатайте все простые числа из промежутка от 1 до n».

v Составить программу к задаче: « Напечатайте число из промежутка от 1 до n с наибольшим количеством делителей».

II. 14. Операторы циклов с условиями

Существуют задачи, решение которых требует повторения серии команд неизвестное количество раз. Обычно, в таких задачах известно либо условие, при истинности которого необходимо повторять эту серию команд, либо условие, при истинности которого следует прекратить повторы. При составлении программ к таким задачам нельзя использовать оператор цикла с параметром для организации повторений. На этот случай существуют другие операторы циклов.

Если известно условие, при котором надо повторять серию командЕсли известно условие, при котором надо прекратить повторы
Оператор цикла с предусловием (цикл «ПОКА»)Оператор цикла с постусловием (цикл «ДО»)
Формат While do begin end;Формат Repeat Until ;
тело цикла – это серия операторов, которые надо повторять.
Механизм выполнения оператора
1. проверяется условие на истинность; 2. если условие истинно, то выполняется тело цикла; 3. снова проверяется условие на истинность; 4. и так далее, будет выполняться тело цикла, и проверяться истинность условия, пока условие не станет ложным; 5. если условие стало ложным, то выполняется оператор, следующий после цикла.1. выполняется тело цикла; 2. проверяется условие на истинность; 3. если условие ложно, то выполняется тело цикла; 4. снова проверяется условие на истинность; 5. и так далее, будет выполняться тело цикла, и проверяться истинность условия, пока условие не станет истинным; 6. если условие стало истинным, то выполняется оператор, следующий после цикла.
Дословный перевод оператора
«Пока условие истинно, делай тело цикла ».«Повторяй тело цикла до того, как условие станет истинным».
Особенности написания оператора
ü Если тело цикла состоит из одного оператора, то операторные скобки можно не писать.ü Каким бы ни было тело цикла, операторных скобок здесь не требуется.
Пример. Составить программу, увеличивающую заданное целое число x вдвое, пока оно не превысит 1000. Дано: x – целое число (integer); Результат: Сообщение о том, что x превысило 1000. Решение: Чтобы увеличить x в два раза понадобится один оператор присваивания x:=x*2. Этот оператор необходимо повторять. Следовательно, понадобится оператор цикла.
Количество повторений не известно, но известно условие повторений x 1000. Воспользуемся оператором цикла «ДО». Составим программу. Var x:integer; Begin Writeln(‘Введите число x’); Readln(x); Repeat x:=x*2; Until x>1000 Writeln(‘число превысило 1000 и стало равно’,x); End.
шагих
X превысило 1000 и стало равно 1600

Проанализируем решение задачи. Допустим, введено число 100. Составим таблицу значений переменных для обеих программ.

шагих
X превысило 1000 и стало равно 1600

Обе программы выполняются одинаково.

Допустим, введено число большее 1000. Например, 1100. Цикл «ПОКА» проверит условие, убедится в его ложности и программа выведет сообщение «x превысило 1000 и стало равно 1100». Цикл «ДО» вначале выполнит тело цикла, а затем, убедится в истинности условия и прекратит работу. После этого последует сообщение «x превысило 1000 и стало равно 2200». В данном случае вторая программа работает некорректно по отношению к исходным данным.

Отличие в работе циклов в том, что цикл «ПОКА» может не выполниться ни разу, если условие заведомо ложно, а цикл «ДО» хотя бы один раз, но выполнится.

! Если решение задачи связано с реализацией циклического алгоритма, то, работая над задачей, следует выяснить:

3. Необходимо, чтобы переменные, участвующие в условии были определены до его проверки;

Пример. Вводить числа с клавиатуры, пока не будет введен 0.

Решение: Для ввода одного числа используем процедуру ввода read(x). Эту процедуру необходимо повторять пока x<>0 или до x=0.

Составим программу двумя способами.

Var x:integer; Begin While x<>0 do read(x); End.Var x:integer; Begin Repeat read(x); Until x=0; End.
В этом случае, до проверки условия переменная x не определена, а значит, равна 0. Условие оказалось заведомо ложным, а значит, программа составлена неверно.В этом случае, до проверки условия переменная x получила свое значение в результате ввода, а значит, программа составлена верно.
Правильное решение: Var x:integer; Begin Read(x); While x<>0 do read(x); End.

4. Необходимо, чтобы в теле цикла происходил процесс, ведущий к изменению истинности условия;

Проанализируем фрагмент программы:

While x 100. Первоначальное значение суммы 0. Чтобы изменялась истинность условия, внутри тела цикла сумма должна меняться, увеличиваясь, каждый раз, на введенное число х.

Writeln(‘сумма превысила 100 и стала равна ’,x);

Пример 2. Составить программу к задаче: «Вводить числа с клавиатуры, пока количество четных чисел, среди введенных, не станет равным k».

Дано: k – целое число (integer);

Результат: сообщение о том, что количество четных чисел равно k;

Решение: Для ввода одного числа используем процедуру ввода read(x). Эту процедуру необходимо повторять пока количество четных чисел kol<>k или до kol=k. Первоначальное значение kol=0. Чтобы изменялась истинность условия, внутри тела цикла количество четных чисел нужно считать. Проверять числа на четность нам поможет условный оператор.

While kol<>k do begin

Writeln(‘введите целое число’);

If x mod 2=0 then kol:=kol+1;

Writeln(‘количество четных чисел равно ’,k);

Writeln(‘введите целое число’);

If x mod 2=0 then kol:=kol+1;

Writeln(‘количество четных чисел равно ’,k);

Пример 3. Составить программу к задаче: «Вводить числа с клавиатуры, пока они образуют возрастающую последовательность».

Результат: сообщение о том, что возрастание последовательности нарушилось.

Решение: Для ввода одного числа используем процедуру ввода read(x). Эту процедуру необходимо повторять пока предыдущее число меньше следующего (x1 =x). Чтобы условие было определено, необходимо ввести первые два члена последовательности (read(x1,x)). На первом шаге цикла будет введено третье число. Теперь надо сравнить второе и третье. Значит, на место x1 должно встать предыдущее x, а на место x, его новое значение.

Writeln(‘введите 2 члена последовательности’);

While x1 b do begin

writeln(‘введите пару чисел’);

Найдите ошибку в программе и исправьте ее.

· Сколько раз выполнится тело цикла:

IF X =B DO BEGIN C:=C-1; D:=D-2*B; END;

§ Составьте программу к задаче «Вводить числа с клавиатуры, пока они образуют убывающую последовательность. Сколько чисел было введено по возрастанию?».

· Составьте программу к задаче «В первый день выручка предпринимателя составила k рублей. Каждый последующий день выручка увеличивалась на 15 %. Вырученные деньги складываются в копилку. Сколько потребуется дней, чтобы заработать 1000000?».

· Составьте программу к задаче «Вводить числа, пока их сумма не превысит 100. Среди них найти максимальное число».

· Составьте программу к задаче: «Напечатать в возрастающем порядке все трехзначные числа, пока не встретится число, сумма цифр которого равна заданному числу m».

II. 15. Сравнительная характеристика циклов

Рассмотрим решение следующей задачи: «Ввести n чисел с клавиатуры и найти сумму четных положительных из них».

Дано: n – количество чисел (integer);

Найти: sum – сумма четных положительных чисел (integer);

Решение: Для ввода одного числа используем процедуру ввода read(x). Эту процедуру необходимо повторять n раз, то есть можно использовать оператор цикла с параметром. На каждом шаге цикла следует проверять, является ли x четным и положительным. В случае истинности условия, необходимо число добавлять к сумме.

Var x,sum,n,i: integer;

Writeln(‘Введите количество чисел’);

For i:=1 to n do begin

If (x mod 2=0) and (x>0) then sum:=sum+x;

Writeln(‘Сумма четных положительных чисел равна ’,sum);

В этой программе параметр цикла введен для того, чтобы отсчитывать количество введенных чисел. Параметр будет увеличиваться на 1, пока не достигнет значения n, то есть при выполнении условия ( i 0) then sum:=sum+x;

Writeln(‘Сумма четных положительных чисел равна ’,sum);

Так как можно определить условие работа цикла, то можно определить и условие выхода из него (i=n). Следовательно, можно составить программу и с использованием оператора цикла «ДО». Составим программу.

Var x,sum,n,i: integer;

Writeln(‘Введите количество чисел’);

If (x mod 2=0) and (x>0) then sum:=sum+x;

Writeln(‘Сумма четных положительных чисел равна ’,sum);

¨ Какой вид циклов является универсальным и почему?

¨ Какой из циклов самый заменимый и почему?

¨ Составить программу, которая среди n введенных чисел считает количество чисел равных 0 или кратных 10 с использованием всех видов циклов.

· Составить программы вывода на экран всех чисел из промежутка от 1 до n, которые делятся на 4 и 5 с использованием всех видов циклов.

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

v Составить программу, которая находит наименьшее трехзначное число, имеющее 10 делителей.

II. 16. Целочисленная арифметика

Целочисленная арифметика – это вычисления связанные с цифрами целых чисел.

Ряд задач на целочисленную арифметику был уже предложен вам в предыдущих параграфах. Например, задача: «Дан шестизначный номер автобусного билета. Говорят, что билет «НЕВЕЗУЧИЙ», если сумма цифр равна 13. Проверить билет на «невезучесть»».

Вспомним как решать такие задачи.

Дано: n – шестизначный номер (longint);

Результат: одно из сообщений «НЕВЕЗУЧИЙ» или «ОБЫЧНЫЙ».

Решение: Чтобы определить, является ли билет «невезучим», необходимо сравнить сумму его цифр с числом 13. Чтобы посчитать сумму, надо знать цифры. Назовем их a1, a2, a3, a4, a5, a6. Последняя цифра в любом числе находится как остаток от деления этого числа на 10 (a6:=n mod 10). Следующую цифру можно найти, если сделать ее последней в числе. Для этого надо убрать шестую цифру. Чтобы убрать цифру из числа. Нужно поделить число на 10 нацело (n:=n div 10). Теперь можно найти a5 (a5:=n mod 10). И так далее. Пока не найдем все цифры.

Var n: longint; a1,a2,a3,a4,a5,a6,sum: integer;

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *