Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Алгоритмы с повторениями. Цикл с параметром FOR
В языке Паскаль существует три различных оператора с помощью которых можно запрограммировать повторяющиеся фрагменты программы (три оператора цикла): - счетный цикл FOR; - цикл WHILE с предусловием; - цикл REPEAT...UNTIL c постусловием. На первом нашем занятии постараемся познакомиться и научимся использовать счётный цикл FOR. Переменная внутри цикла изменяется автоматически от k до n (n>k) с шагом 1. Формат записи цикла: for i:=k to n do или от n до k (n>k) с шагом -1. Формат записи цикла: for i:=n dawnto k do Если в цикле должны выполняться несколько операторов, то используем операторные скобки: begin …. end; Цикл FOR удобно использовать тогда, когда точно известно количество повторений.
Рассмотрим несколько примеров: Найти сумму всех натуральных чисел от 1 до n.
program zadacha3_1; var i,n,s:integer; Begin writeln(' введите натуральное n'); readln(n); s:=0; for i:=1 to n do s:=s+i; writeln('сумма от 1 до',n,' = ',s); End.
В данном цикле переменная i автоматически изменяется от 1 до n с шагом 1. Поэтому к переменной s прибавляется i вначале равная 1, потом 2, потом 3, и т.д. до n, соответственно переменная s принимает значении 1, 3, 6, 10, 15 ….… Задано натуральное n. Вычислить сумму ряда: S=1 - 1/2 + 1/3 - 1/4 + 1/5-........±1/n
program zadacha3_2; var i,n,a:integer; s:real; Begin writeln('Введите n'); readln(n); s:=1;a:=1; for i:=2 to n do begin a:=(-1)*a; s:=s+a/i; end; writeln('Сумма ряда S= ',s); End.
Определить количество трёхзначных натуральных чисел, сумма цифр которых равна заданному числу N.
program zadacha3_3; var с1,с2,с3,i,n,kol:integer; Begin writeln('Введите n'); readln(n); kol:=0; for i:=100 to 999 do begin c1:=i div 100; c2:=(i div 10) mod 10; c3:=i mod 100; if c1+c2+c3=n then kol:=kol+1; end; writeln('Количество таких чисел = ',kol); End. Вопросы для повторения: 1. Для чего предназначен оператор цикла? 2. Какие существуют циклы в языке Паскаль? 3. Какой формат записи имеет оператор FOR? 4. Как работает оператор FOR? 5. В каких случаях применяется оператор FOR? 6. Сколько раз будет выполнен цикл, и чему будет равна переменная S после выполнения: s:=0; n=6; for i:=3 to n do s:=s+i; 7. Как в теле цикла выполнить несколько операторов? Задания для самостоятельной работы: 1. Найти сумму всех нечётных трёхзначных чисел. 2. Найти сумму положительных кратных 7 чисел, меньших 100. 3. Найти все числа, которые делятся на N среди: a) всех двухзначных чисел; b) всех трёхзначных чисел.
4. Составить программу вычисления суммы квадратов чисел от 1 до n. 5. Среди двузначных чисел найти те, сумма квадратов цифр которых делится на 13. 6. Найти все делители для заданного числа n. 7. Дано натуральное число n. Вычислить: a) 2n; b) 3n c) n!; 8. Среди четырёхзначных чисел выбрать те, у которых: a) все четыре цифры различны (например: 3167, 9012); b) имеются три одинаковые цифры (например: 1311, 7779); c) цифры попарно различны (например: 1331, 7979, 2255); d) цифры образую возрастающую последовательность (например: 1389, 4678); Написать программу поиска чисел <1000, которые при делении на 2 дают в остатке 1, при делении на 3 дают в остатке 2, при делении на 4 - в остатке 3, при делении на 5 - в остатке 4, при делении на 6 - в остатке 5 а при делении на 7 дают в остатке 6.
|
|||||
Последнее изменение этой страницы: 2017-02-07; просмотров: 151; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.141.100.120 (0.005 с.) |