Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемАлексей Элевтеров
2 На этом уроке вы узнаете Что такое вложенные циклы. Как они применяются в программах. Как можно сократить количество повторений цикла.
3 Для чего используются команды цикла? Как записывается команда цикла FOR? Как в цикле записать команду присваивания, чтобы она вычисляла сумму чисел? Количество? Какое начальное значение должно быть у переменной, в которой накапливаем произведение чисел? Как записывается команда цикла, в которой счетчик цикла уменьшается? Можно ли изменять значение верхней границы цикла в теле цикла? Можно ли в теле цикла использовать команду сравнения?
4 Цикл называется вложенным, если он находится в теле другого цикла. for i:=0 to n do begin for j:=0 to m do begin for k:=0 to w do begin end; Внутренний цикл должен полностью находиться в теле внешнего цикла. Цикл k Цикл j Цикл i
5 Сколько можно купить быков, коров и телят, если бык стоит 10 рублей, корова -5 рублей, теленок – 0,5 рубля и на 100 рублей надо купить 100 животных. Решение B – количество быков K - количество коров T- количество телят. После этого можно записать два уравнения: 10b+5k+0,5t=100 b+k+t=100, Преобразуем их: 20b+10k+t=200 b+k+t=100 На 100 рублей можно купить: Не больше 10 быков, 0b10 Не больше 20 коров, 0k20 Не больше 200 телят, 0t200
6 Program Pokupka1; Uses Crt; Var b, k, t:integer; Begin Clrscr; for b:=0 to 10 do for k:=0 to 20 do for t:=0 to 200 do if (20*b+10*k+t=200) and (b+k+t=100) then writeln('Bkov ',b,' korov ',k,' telyat ', t); readln; end. Сколько раз будет проверяться условие в данной программе? Значение b изменяется 11 раз – от 0 до 10; k - 21, t Таким образом, условие будет проверяться 11*21*201 = раз.
7 Program Pokupka2; Uses Crt; Var b, k, t:integer; Begin Clrscr; for b:=0 to 10 do for k:=0 to 20 do begin t:=100-(b+k); if 20*b+10*k+t=200 then writeln('Bkov ',b,' korov ',k,' telyat ', t); end; readln; end. 11*21*201 = Если известно количество быков и коров, то количество телят можно вычислить по формуле: t:=100-(b+k); Цикл по переменной t можно исключить. Количество повторений проверки условия становиться 11*21=231
8 В кассе есть монеты по 2, 5 и 10 копеек. Сколькими способами можно выдать сдачу на некоторую сумму Sum?
9 Program Sdacha; Uses Crt; Var Sum, Xmax, Ymax, Zmax, x, y, z, p:integer; Begin Clrscr; Writeln ('Vvedite Summu'); Readln (Sum); p:=0; Xmax:=Sum div 2; Ymax:=Sum div 5; Zmax:=Sum div 10; Writeln (' Vsego monet'); Writeln ('______________________'); for x:=0 to Xmax do for y:=0 to Ymax do for z:=0 to Zmax do if 2*x+5*y+10*z=Sum then begin writeln(x:3,y:3,z:3,x+y+z:8); p:=p+1; end; If p=0 then writeln('Variantov net') else writeln ('Vsego ', p,' variantov'); readln; end.
10 СТО, СОТ и ТОС – трехзначные числа. Определить цифры С, Т и О и вывести их на экран СТО =С*100+Т*10+О
11 Program Summa; Uses Crt; Var c, t, o, p, Cto, Toc, Cot:integer; Begin Clrscr; Writeln (' CTO+COT=TOC'); Writeln; for c:=1 to 9 do for t:=1 to 9 do for o:=0 to 9 do begin Cto:=c*100+t*10+o; Cot:=c*100+o*10+t; Toc:=t*100+o*10+c; if Cto+Cot=Toc then begin writeln(Cto:4,Cot:4,Toc:4); p:=p+1; end; End; If p=0 then writeln('Variantov net') else writeln ('Vsego ', p,' variantov'); readln; end.
12 Какой цикл можно назвать вложенным? Какие правила записи вложенных циклов? Могут ли циклы «пересекаться» друг с другом? Для чего нужно стараться сократить количество повторений циклов?
13 1. Определить сколько существует «счастливых» автобусных билетов в одной серии с номерами от до «Счастливым» считается билет, сумма первых трех цифр которого равна сумме вторых трех цифр. 2. С клавиатуры вводится 10 различных произвольных чисел. а) Найти разность между наибольшим и наименьшим из них. б) Порядковый номер наибольшего и наименьшего числа. 3. Вычислить: Эту задачу нужно решать с конца, т.е., использовать цикл с уменьшающимся счетчиком.
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.