Программирование. Pascal ABC. Циклы с условиями


Чтобы посмотреть презентацию с оформлением и слайдами, скачайте ее файл и откройте в PowerPoint на своем компьютере.
Текстовое содержимое слайдов:

Циклы с условиями… и ещё кое-что очень важное Цикл с предусловиемФормат: while условие do оператор;Особенности:Цикл выполняется, пока условие истинноЕсли условие изначально ложно, то цикл не выполнится ни разуvar i:integer;begin i:=0; while i<10 do i:=i+1;end.Программа просто увеличивает переменную i на 1, пока она меньше 10 и ничего не выводит.

Цикл с предусловиемЕсли мы попытаемся выводить значение переменной i, то нужно дописать оператор вывода:var i:integer;begin i:=0; while i<10 do i:=i+1; writeln(i);end.Программа выводит только последнее значение (10), а не все от 1 до 10.
Цикл с предусловиемПроблема в том, что после do должен быть один оператор (см. формат)В нашем случае повторяется только первая строчка, а вторая выполняется один раз.begini:=0;while i<10 do i:=i+1; writeln(i);end.Эта строчка повторяется 10 раз в циклеА эта строчка выполняется всего 1 раз Операторные скобкиДля того, чтобы объединить несколько операторов в одно целое (там, где должен быть один оператор) применяются операторные скобки, указывающие начало и конец группы операторов.Начало группы: служебное слово beginКонец группы: служебное слово end;Операторные скобки могут применятся не только в операторах цикла, но и в условных операторах. Цикл с предусловиемПрограмма вывода 10 чисел будет выглядеть так:var i:integer;begini:=0;while i<10 do begin i:=i+1; writeln(i); end;end.Теперь оба оператора будут повторяться 10 раз
Операторные скобкиОператорные скобки служат для объединения нескольких операторов в единую группуНачало группы – begin, конец – end;Группа может применятся в любом месте программы, где вместо одного действия нужно сделать несколько.if a>0 then begin x:=sqrt(a)/2; writeln(x);end;if a>0 then x:=sqrt(a)/2; writeln(x);сравните

Цикл с предусловиемТак как значение переменной мы изменяем сами, то шаг её изменения может быть отличен от единицы, например:i:=0;while i<10 do begin i:=i+2; writeln(i); end;end.Теперь каждый раз к i прибавляется 2Что выведет эта программа?Понадобился ли нам условный оператор?Как вывести числа, кратные 3?Может ли шаг изменения быть дробным? Что для этого нужно?



Цикл с предусловиемЦикл с предусловием является самым универсальным циклом и с его помощью решаются многие задачи, например, задача нахождения количества цифр в числе:beginreadln(x);k:=0;while x>0 do begin x:=x div 10; k:=k+1; end; writeln('Количество цифр: ',k);end. Цикл с постусловиемФормат:repeat оператор(ы)until условие;Особенности:Вне зависимости от условия цикл выполнится хотя бы один разЦикл выполняется до тех пор, пока условие ложноЦикл имеет четкие границы и для выполнения нескольких действий операторные скобки не нужны.
Цикл с постусловиемЦикл с постусловием используется в тех случаях, когда тело цикла должно обязательно выполниться хотя бы один раз, например, при проверке ввода пароля:program z;var x:integer;begin repeat write('Введите числовой пароль: '); readln(x); until x=358; writeln('Доступ разрешён!');end. ЗаданияВыведите значения функции для x от 0,3 до 2,5 с шагом 0,15.Определите максимальную цифру в целом числе N (N вводится с клавиатуры).Определить положение минимальной цифры в числе N (N вводится с клавиатуры).Определить, каких цифр (четных или нечетных) больше в числе N (N вводится с клавиатуры).


Задачи на 1 балл
Вывести все четные числа из промежутка от –50 до 50.
Определить количество двухзначных чисел, кратных 9.
Найти сумму положительных нечетных чисел до 140.
Найти произведение чисел, кратных 3, лежащих в промежутке от 11 до 31.
Вывести на экран квадраты четных чисел из промежутка от 8 до 22.
Вывести значения функции y=2x2-5x+6 для всех целых x∈[-10;10].
Задачи на 2 балла
Даны натуральные числа от 35 до 87. Найти и напечатать те из них, которые при делении на 7 дают остаток 1, 2 или 5.
Найди сумму чисел из промежутка от A до B, кратных 4 (A и B вводятся с клавиатуры)
Найти четырехзначное число, которое при делении на 133 дает в остатке 125, а при делении на 134 дает в остатке 111.
Найти произведение двухзначных чисел, сумма цифр которых равна 10.
Определите количество двухзначных чисел, сумма цифр которых кратна 5.
Найти все двухзначные числа, которые содержат цифру N (N ввести с клавиатуры).
Введите натуральное число N. Найти количество натуральных чисел, не превосходящих N и не делящихся ни на одно из чисел 2,3,5.
Задачи на 3 балла
Сумма цифр трехзначного числа и само число кратны 7. Найти все такие числа.
Квадрат трехзначного числа оканчивается тремя цифрами, которые как раз и составляют это число. Найти все такие числа.
Найти сумму ряда: s=1+12+13+…+150. (суммой будет явно не целое число)
Определить количество трехзначных чисел, сумма цифр которого равна N (N вводится с клавиатуры).
Вычислить сумму кубов чисел от 25 до 55.
Найдите двухзначное число, равное сумме цифр десятков и квадрата цифры единиц.
Найдите сумму чисел в промежутке от 20 до 100, кратных 3 и оканчивающихся на 2, 4 или 8.
В трехзначном числе зачеркнули первую цифру слева, когда полученное двухзначное число умножили на 7, то получили данное число. Найти это число.
Найти все трехзначные числа, которые при делении на 2 дают остаток 1, при делении на 3 – остаток 2, при делении на 4 – остаток 3, а само число делится на 5.
Задачи на 4 балла
Найдите количество положительных чисел, не превосходящих 400 и равных сумме кубов своих цифр.
Найдите шестизначное число, оканчивающее на 999, кратное 13, 17 и 19 одновременно.
Найдите сумму трехзначных чисел, квадрат которых оканчивается тремя одинаковыми цифрами, отличными от 0.
Найдите все двухзначные числа, такие, что если к сумме цифр этого числа прибавить квадрат этой суммы, то получится это число.
Определить произведение двухзначных чисел, сумма квадратов цифр которых кратна 13.
Определить количество четырехзначных чисел, у которых все цифры различны.
Ввести с клавиатуры 2 числа m и n. Найти все кратные им числа, меньшие произведения m*n.
Определить среднее арифметическое четных чисел в промежутке от a до b (a и b вводятся с клавиатуры).
Шестизначное десятичное число начинается слева цифрой 1. Если эту цифру перенести с первого места слева на последнее место справа, то значение образованного числа будет втрое больше исходного. Найдите исходное число.
Трехзначное десятичное число оканчивается цифрой 3. Если эту цифру переместить через два знака влево, т. е. с этой цифры будет начинаться запись нового числа, то это новое число будет на единицу больше утроенного исходного числа. Найдите это число.
Найти все трехзначные числа, при делении каждого из которых на 11 получается частное, равное сумме квадратов значений отдельных цифр данного числа.
Найдите четырехзначное число, являющееся точным квадратом, у которого две первые цифры одинаковы и две последние цифры тоже одинаковы.

Приложенные файлы