Меню
Разработки
Разработки  /  Информатика  /  Презентации  /  9 класс  /  Вложенные циклы_Составление программ

Вложенные циклы_Составление программ

00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

06.01.2017

Содержимое разработки

© М.Е.Макарова http :// uchinfo . com . ua

© М.Е.Макарова http :// uchinfo . com . ua

Что такое вложенные циклы. Как они применяются в программах. Как можно сократить количество повторений цикла.
  • Что такое вложенные циклы.
  • Как они применяются в программах.
  • Как можно сократить количество повторений цикла.
Для чего используются команды цикла? Как записывается команда цикла FOR ? Как в цикле записать команду присваивания, чтобы она вычисляла сумму чисел? Количество? Какое начальное значение должно быть у переменной, в которой накапливаем произведение чисел? Как записывается команда цикла, в которой счетчик цикла уменьшается? Можно ли изменять значение верхней границы цикла в теле цикла? Можно ли в теле цикла использовать команду сравнения?
  • Для чего используются команды цикла?
  • Как записывается команда цикла FOR ?
  • Как в цикле записать команду присваивания, чтобы она вычисляла сумму чисел? Количество?
  • Какое начальное значение должно быть у переменной, в которой накапливаем произведение чисел?
  • Как записывается команда цикла, в которой счетчик цикла уменьшается?
  • Можно ли изменять значение верхней границы цикла в теле цикла?
  • Можно ли в теле цикла использовать команду сравнения?
Цикл называется вложенным , если он находится в теле другого цикла. for i :=0 to n do begin  for j :=0 to m d o  begin   for k :=0 to w do  begin  end;  end; end; Внутренний цикл должен полностью находиться в теле внешнего цикла. Цикл j Цикл k Цикл i

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

for i :=0 to n do

begin

for j :=0 to m d o

begin

for k :=0 to w do

begin

end;

end;

end;

Внутренний цикл должен полностью находиться в теле внешнего цикла.

Цикл j

Цикл k

Цикл i

Сколько можно купить быков, коров и телят, если бык стоит 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 быков, 0 ≤ b ≥10 Не больше 20 коров , 0 ≤ k ≥20 Не больше 200 телят , 0 ≤ t ≥200

Сколько можно купить быков, коров и телят, если бык стоит 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 быков, 0 ≤ b ≥10
  • Не больше 20 коров , 0 ≤ k ≥20
  • Не больше 200 телят , 0 ≤ t ≥200
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 - 201 Таким образом, условие будет проверяться 11*21*201 = 46431 раз .

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 - 201 Таким образом, условие будет проверяться 11*21*201 = 46431 раз .

11*21*201 = 46431 Если известно количество быков и коров, то количество телят можно вычислить по формуле:  t:=100-(b+k); Цикл по переменной t можно исключить.  Количество повторений проверки условия становиться 11*21=231 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 = 46431

Если известно количество быков и коров, то количество телят можно вычислить по формуле:

t:=100-(b+k);

Цикл по переменной t можно исключить.

Количество повторений проверки условия становиться 11*21=231

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.

В кассе есть монеты по 2, 5 и 10 копеек. Сколькими способами можно выдать сдачу на некоторую сумму Sum ?

В кассе есть монеты по 2, 5 и 10 копеек. Сколькими способами можно выдать сдачу на некоторую сумму Sum ?

Program S dacha; 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 (' 2 5 10 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.

Program S dacha;

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 (' 2 5 10 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.

СТО, СОТ и ТОС – трехзначные числа. Определить цифры С, Т и О и вывести их на экран СТО =С*100+Т*10+О

СТО, СОТ и ТОС – трехзначные числа.

Определить цифры С, Т и О и вывести их на экран

СТО =С*100+Т*10+О

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.

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.

Какой цикл можно назвать вложенным? Какие правила записи вложенных циклов? Могут ли циклы «пересекаться» друг с другом? Для чего нужно стараться сократить количество повторений циклов?
  • Какой цикл можно назвать вложенным?
  • Какие правила записи вложенных циклов?
  • Могут ли циклы «пересекаться» друг с другом?
  • Для чего нужно стараться сократить количество повторений циклов?
1. Определить сколько существует «счастливых» автобусных билетов в одной серии с номерами от 000000 до 999999. «Счастливым» считается билет, сумма первых трех цифр которого равна сумме вторых трех цифр. 2. С клавиатуры вводится 10 различных произвольных чисел.  а) Найти разность между наибольшим и наименьшим из них.  б) Порядковый номер наибольшего и наименьшего числа. 3. Вычислить: Эту задачу нужно решать с конца, т.е., использовать цикл с уменьшающимся счетчиком.

1. Определить сколько существует «счастливых» автобусных билетов в одной серии с номерами от 000000 до 999999.

«Счастливым» считается билет, сумма первых трех цифр которого равна сумме вторых трех цифр.

2. С клавиатуры вводится 10 различных произвольных чисел.

а) Найти разность между наибольшим и наименьшим из них.

б) Порядковый номер наибольшего и наименьшего числа.

3. Вычислить:

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

1. Выучить § 21. 2. Стр. 142 № 11 3. Написать программу, которая выводит на экран квадрат Пифагора – таблицу умножения. 1 1 2 2 1 3 3 2 2 . . . 3 4 3 4 9 4 6 5 6 5 9 6 8 9 6 7 12 18 10 27 8 7 15 12 8 36 9 14 18 16 45 9 21 10 54 24 10 18 63 27 20 72 30 81 90

1. Выучить § 21.

2. Стр. 142 № 11

3. Написать программу, которая выводит на экран квадрат Пифагора – таблицу умножения.

1

1

2

2

1

3

3

2

2

. . .

3

4

3

4

9

4

6

5

6

5

9

6

8

9

6

7

12

18

10

27

8

7

15

12

8

36

9

14

18

16

45

9

21

10

54

24

10

18

63

27

20

72

30

81

90

-80%
Курсы дополнительного образования

Основы HTML

Продолжительность 72 часа
Документ: Cвидетельство о прохождении курса
4000 руб.
800 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Вложенные циклы_Составление программ (118.5 KB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт