Практические задания по теме «Циклический оператор for».docx

  • docx
  • 14.05.2020
Публикация в СМИ для учителей

Публикация в СМИ для учителей

Бесплатное участие. Свидетельство СМИ сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Практические задания по теме «Циклический оператор for».docx

Практические задания по теме: «Циклический оператор  for»

Задача №1.  Поменять местами первую и последнюю цифры числа.

Модель:

Исходные данные:  n

Результат: a

Связь: a=k mod 10

Листинг:

Program q1;

Var b, a, n, k: integer;

Begin writeln ('введите число n=');

      Readln (n);

      k: =n;

      a: =k mod 10;

          Repeat b: =k mod 10;

                 k: =k div 10

          Until k div 10 =0;

      b: =k mod 10;

      writeln(a,n div 10 div 10 mod 10,n div 10 mod 10,b)

end.

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

Модель:

Исходные данные:  p,c,k

Результат: s

Связь: s:=c*k

Листинг:

program q3;

  uses crt;

  var c, k, s,i: integer;

      p:string;

begin

  clrscr;

  writeln('Предполагаемая сумма: ');

  readln(p);

    writeln('цена товара');

    readln (c);

    writeln ('количество');

    readln (k);

    for i:=1 to length(p) do begin

    s:=c*k;

    end;

    writeln('Стоимость покупки = ', s);

    if s>p then begin writeln ('Сумма превышена');

                end;

end.

Задача №5.  Дано двузначное число.  Определить, содержит ли оно цифру n и делится ли оно на n .

Модель:

Исходные данные:  a,b

Результат: b

Связь: a mod b = 0

Листинг:

program q5;

uses crt;

var i,a,b:integer;

begin

 clrScr;

 writeln ('введите двузначное число: ');

 readln (a);

 writeln ('введите цифру');

 readln (b);

 for i:=1 to a do begin

  if a[i]=b then begin writeln ('число содержит ',b);

                  end;

   end;

   if a mod b = 0 then begin writeln ('делится');

   end;

end.

Задача №6.  Найти все счастливые билеты. Счастливыми называются билеты, у которых сумма первых 3-х равна сумме следующих 3-х.

Модель:

Исходные данные:  ml,m2

Результат: i

Связь: (m1=m2)and(i mod 7=0)

Листинг:

program q6;

uses crt;

var i,j,k,m1,m2,j1,l,er:integer;

    i1:string;

  begin

   clrscr;

    i:=100000;

    while i<=999999 do

     begin

      m1:=0;m2:=0;str(i,i1);

      for j:=1 to 3 do

       begin

        val(i1[j],j1,er);m1:=m1+j1;

        val(i1[j+3],j1,er);m2:=m2+j1;

       end;

      if (m1=m2)and(i mod 7=0)then

       begin

        inc(l);inc(k);

         if k=11 then begin writeln('');k:=1; end;

        if l=250 then begin l:=0;readln; end;

        writeln(i,' ');

       end;inc(i);

     end;

  end.

Задача №7.  Найти значение выражения 1*1+2*2+...+n*n.

Модель:

Исходные данные:  n

Результат: s

Связь: s := s + i * i

Листинг:

program q7;

uses crt;

 var n, s, i : integer;

begin

clrScr;

  writeln ('n = ');

  readln (n);

  s := 0;

  for i := 1 to n do begin

   s := s + i * i;

   end;

  writeln ('s = ', s);

end.

Задача №8.  Составить программу нахождения суммы цифр числа.

Модель:

Исходные данные:  n

Результат: f

Связь: f:=f+i

Листинг:

program q8;

 uses crt;

 var f, n, i : integer;

begin

 clrscr;

 writeln('n=');

 readln(n);

 f:=0;

 for i:=1 to n do begin

 f:=f+i;

 end;

 writeln('f=',f);

end.

Задача №9.  Дана последовательность натуральных чисел. Найти наименьшее натуральное число, которое отсутствует в последовательности.

Модель:

Исходные данные:  a

Результат: i

Связь: ii<>i

Листинг:

program q9;

 uses crt;

 var n,n1,n2,ii,i,j,er:integer;

     m,a:string;

begin

 clrscr;

 writeln('введите последовательность:');readln(a);

 n:=length(a);

 for i:=1 to n-1 do

  for j:=i+1 to n do

   begin

    val(a[i],n1,er);

    val(a[j],n2,er);

    if n1>n2 then

     begin

      m:=a[i];

      a[i]:=a[j];

      a[j]:=m[1];

     end;

   end;

 for i:=1 to n do

  begin

   val(a[i],ii,er);

   if ii<>i then

    begin

     writeln(i);

           end;

  end;

 writeln('нет');

end.

Задача №10.  Составить программу, определяющую, является ли перевертышем число.

Модель:

Исходные данные:  n

Результат: a=b

Связь: b:=a[i]+b

Листинг:

program q10;

 uses crt;

 var a,b : string;

     n,i : integer;

begin

 clrscr;

 writeln('введите число=');readln(n);

 str(n,a);

 b:='';

 for i:=1 to length(a) do b:=a[i]+b;

 if a=b then writeln('перевертыш’) else writeln(‘не перевертыш’);

 readln;

end.

Задача №11.  Дано натуральное число n. Верно ли, что сумма цифр этого числа является нечетной.

Модель:

Исходные данные:  a

Результат:

Связь: s mod 2<>0

Листинг:

program q11;

uses crt;

var a : string;

    t,er,n,i,s : integer;

begin

  clrscr;

  writeln('введите число ');readln(a);

  s:=0;

  for i:=1 to length(a) do

  begin

    val(a[i],t,er);

    s:=s+t;

  end;

  if s mod 2<>0

   then writeln(‘является нечетной’)

   else writeln(‘является четной’);

end.

Задача №14.  Дано натуральное число А. Составить программу определения такого наибольшего N, что N!< A (A>1).

Модель:

Исходные данные:  a,n,k

Результат: n

Связь:    n:=n+1;  k:=k*n

Листинг:

program q14;

uses crt;

var n,k,i : integer; a:string;

begin

  clrscr;

  writeln('введите число ');readln(a);

  n:=0;k:=1;

  for i:=1 to length (a) do

  if k<a then

  begin

    n:=n+1;

    k:=k*n;

  end;

   writeln('ответ:',n);

end.

Задача №15.  Даны n чисел. Определить являются ли они взаимно простыми, т.е. имеют общий делитель отличный от единицы.

Модель:

Исходные данные:  n,i

Результат:

Связь: a[j] mod i=0

Листинг:

program q15;

uses crt;

var a : array [1..100] of longint;

    i,max,n,j : integer;

 begin

  clrscr;

   write('введите количество чисел:');readln(n);

   for i:=1 to n do

    begin

     write(i,') число:');readln(a[i]);

 

    end;

   max:=a[1];

   for i:=2 to n do if max<a[i] then max:=a[i];

   for i:=2 to max do

    for j:=1 to n do

     if a[j] mod i=0 then begin write('да');readln;halt;end

                     else begin write('нет');readln;halt;end;

  readln;

 end.

Задача №16.  Найти все простые делители натурального число N.

Модель:

Исходные данные:  n

Результат: i

Связь: k=0

Листинг:

program q16;

uses crt;

var i,j,m,n,k:integer;

begin

clrScr;

writeln('введите натуральное число');

readln(n);

for i:=1 to n do

if n mod i=0 then begin

for j:=2 to i div 2 do

if i mod j=0 then inc(k);

if k=0 then writeln(i);

end;

end.

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

Модель:

Исходные данные:  n

Результат: n

Связь: n[i]>n[i+1]

Листинг:

program q17;

uses crt;

var n:string; c:char;i,j:integer;

begin

clrScr;

writeln('введите последовательность 10 чисел');

readln(n);

  for j:=1 to length(n) do

      for i:=1 to length(n)-1 do

      if n[i]>n[i+1] then begin c:=n[i]; n[i]:=n[i+1]; n[i+1]:=c;

      end;

      writeln('n=',n);

end.

Задача №18.  Составить программу, печатающую все делители целого числа в порядке возрастания.

Модель:

Исходные данные:  N

Результат: i

Связь: (N Div i) = (N / i)

Листинг:

Program q18 ;

Var

i,N: Integer;

Begin

Write ('Введите число, для которого ищутся делители: ');

ReadLn (N);

WriteLn ('Делители числа N = ', N, ' равны:');

For i := 1 To N Do

If (N Div i) = (N / i)

Then WriteLn (i);

ReadLn;

End.

Задача №19.  Найти наибольший общий делитель двух натуральных чисел a и b.

Модель:

Исходные данные:  a,b

Результат: a+b

Связь: a>b

Листинг:

program q19;

Var a, b: integer;

    Begin

        WriteLn ('Введите два числа');

        ReadLn (a, b) ;

        Repeat

          If a>b Then a:=a mod b Else b:=b mod a

        Until (a=0) or (b=0) ;

        Write (a+b);

        ReadLn

End.

Задача №20.  Составить программу, печатающую все делители целого числа в порядке  убывания.

Модель:

Исходные данные: n

Результат: i

Связь: n mod i=0

Листинг:

program q20;

uses crt;

var n,i:integer;

begin

 clrscr;

 write('-> ');

 readln(n);

 writeln;

 for i:=round(sqrt(n)) downto 1 do if n mod i=0 then write(i,' ');

end.

Задача №21.  Составить программу вычисления факториала числа N.

Модель:

Исходные данные:  n

Результат: f

Связь: f=f*i

Листинг:

program q21;

 uses crt;

 var f, n, i : integer;

begin

 clrscr;

 writeln('n=');

 readln(n);

 f:=1;

 for i:=1 to n do begin

 f:=f*i;

 end;

 writeln(n,'!= ',f);

end.

Задача №22.  Найти количество букв "а" в тексте.

Модель:

Исходные данные:  d

Результат: n

Связь: n = n+1

Листинг:

program q22;

 uses crt;

 var d : string;

     n, i, x : integer;

begin

 writeln ('введите текст  ');

 readln(d);

 n := 0;

 x:=length(d);

 for i:=1 to x do begin

  if d[i]='а' then n := n+1;

  end;

 writeln('в тексте количество букв а= ',n);

end.

Задача №23.  Записать программу возведения числа A в степень N.

Модель:

Исходные данные:  n,a

Результат: p

Связь: p:=p*a

Листинг:

program q23;

 uses crt;

 var a, n, i, p : integer;

begin

 clrscr;

 writeln('n=');

 readln(n);

 writeln('a=');

 readln(a);

 p:=1;

 for i:=1 to n do begin

  p:=p*a;

  end;

  write('p=',p);

end.

Задача №24.  Составить программу проверки есть ли в тексте буква "s".

Модель:

Исходные данные:  t

Результат:true

Связь: s = true

Листинг:

program q24;

 uses crt;

 var t : string;

     i,x : integer;

     s : boolean;

begin

 clrscr;

 writeln ('введите текст:');

 readln(t);

 x:=length(t);

 for i:=1 to x do begin

  if t[i]='s' then s := true;

   end;

 if s = true then writeln('есть буква s')

             else writeln('нет буквы s');

end.

Задача №25.  Определить количество слов в предложении.

Модель:

Исходные данные:  t

Результат: n

Связь: n=n+1

Листинг:

program q25;

 uses crt;

 var t : string;

     l,i,n : integer;

begin

 clrscr;

 writeln('введите текст:');

 readln(t);

 l:=length(t)+1; t[l]:=' ';

 for i:=1 to l do begin

 if t[i]=' ' then n:=n+1;

 end;

 writeln('в тексте ',n,' слов');

end.

Задача №26.  Найти двузначное число, сумма кубов цифр которого равна n.

Модель:

Исходные данные:  n

Результат: z

Связь: z:=10*i+j

Листинг:

program q26;

 uses crt;

 var j,i : integer;

     z,n : longint;

begin

 clrscr;

 write('введите n: ');readln(n);

 for j:=1 to 9 do

  for i:=1 to 9 do begin

   if i*i*i+j*j*j=n then z:=10*i+j;

   end;

 writeln('z=',z);

end.

Задача №27.  Определить, является ли слово перевертышем.

Модель:

Исходные данные:  a

Результат:

Связь: a=b

Листинг:

program q27;

 uses crt;

 var a,b,c : string;

     i,x : integer;

begin

 clrscr;

 write('Введите слово:  ');

 readln(a);

 x:=length(a);

 for i:=1 to x do begin

 b:=a[i]+b;

 end;

 if a=b then writeln('перевертыш')

        else write('не перевертыш');

end.

Задача №28.  Изменить число так, чтобы из него было убраны все 1 и 5.

Модель:

Исходные данные:  a

Результат: c

Связь: c:=c+b[j]

Листинг:

program q28;

uses crt;

var b,a,c : string;

    i,j,k : integer;

begin

  clrscr;

  writeln('введите число: ');

  readln(a);

  j:=0;

  k:=0;

  for i:=1 to length(a)do

  if (a[i]<>'1')and(a[i]<>'5')then

  begin

    j:=j+1;

    k:=k+1;

    b[j]:=a[i];

  end;

  for j:=1 to k do c:=c+b[j];

  writeln('измененное число ',c);

end.

Задача №29.  Написать программу, печатающую сумму квадратов числа различными способами.

Модель:

Исходные данные:  m

Результат: k

Связь: k:=k+1

Листинг:

program q29;

uses crt;

var k,g,i,j,m :integer;

begin

  clrscr;

  write('введите число: ');

  readln(m);

  k:=0;

  for i:=1 to m do

  begin

    for j:=1 to m do

    if i*i+j*j=m then begin

      k:=k+1;

      writeln(i,'*',i,'+',j,'*',j,'=',m);

    end;

  end;

  if k>0 then writeln('можно ',k,' способами')

         else writeln('нельзя представить');

end.

Задача №30.  Ввод '352', вывод - 'три пять два'.

Модель:

Исходные данные:  a,b,c

Результат: b[j]

Связь: c[i]=a[j]

Листинг:

program q30;

uses crt;

var a,c:string;i,j:integer;

    b:array[1..10]of string;

  begin

    clrscr;

      a:='0123456789';

      b[1]:='нуль';   b[2]:='один';

      b[3]:='два';    b[4]:='три';

      b[5]:='четыре'; b[6]:='пять';

      b[7]:='шесть';  b[8]:='семь';

      b[9]:='восемь'; b[10]:='девять';

      writeln('Введите число:');readln(c);

       for i:=1 to length(c) do

          for j:=1 to 10 do

              if c[i]=a[j] then writeln(b[j],' ');

  end.

 

Задача №31.  Сколькими различными способами можно надеть на нить семь бусин двух цветов - синего и белого. Напечатать возможные варианты.

Модель:

Исходные данные:  a,b,c,d,e,f,k,m

Результат: n

Связь: n:=n+1

Листинг:

program q31;

uses crt;

var n,a,b,c,d,e,f,k,m:integer;

 begin

  clrscr;

    for a:=1 to 2 do

     for b:=1 to 2 do

      for c:=1 to 2 do

       for d:=1 to 2 do

        for e:=1 to 2 do

         for f:=1 to 2 do

          for k:=1 to 2 do

           begin

            m:=a*1000000+b*100000+c*10000+d*1000+e*100+f*10+k;

            n:=n+1;

            writeln(' ',m);

           end;

    writeln('');writeln('количество способов:',n);

 end.

Задача №32.  Сколькими различными способами можно раскрасить грани куба в четыре цвета. Напечатать возможные варианты.

Модель:

Исходные данные:  a,b,c,d,e,f,m

Результат: n

Связь: n:=n+1

Листинг:

program q32;

uses crt;

var n,a,b,c,d,e,f,m:integer;

 begin

   clrscr;

    for a:=1 to 4 do

     for b:=1 to 4 do

      begin

       for c:=1 to 4 do

        for d:=1 to 4 do

         for e:=1 to 4 do

          for f:=1 to 4 do

           begin

             m:=a*100000+b*10000+c*1000+d*100+e*10+f;

             n:=n+1;writeln(' ',m);

           end;

       end;

    writeln('');writeln(' кол-во способов:',n);

 end.

Задача №33.  Написать программу, печатающую все 3-хзначные числа, цифры которых являются делителем этого числа.

Модель:

Исходные данные:  a,c,b

Результат: m

Связь: m:=a*100+b*10+c

Листинг:

program q33;

uses crt;

var a,b,c,m,m1:integer;

 begin

  clrscr;

    for a:=1 to 9 do

     for b:=1 to 9 do

      for c:=1 to 9 do

       begin

        m:=a*100+b*10+c;

        m1:=c*100+b*10+a;

        if (m mod a=0)and(m1 mod a=0)and

           (m mod b=0)and(m1 mod b=0)and

            (m mod c=0)and(m1 mod c=0)and(a<>c)then writeln(' ',m);

      end;

 end.

 

Задача №34.  Найти сумму всех значений выражения y:= 8i3-7i+8 на интервале [1,x].

Модель:

Исходные данные:  x

Результат: z

Связь: z:=z+y

Листинг:

program q34;

uses crt;

var i,z,y,x:integer;

begin

 clrScr;

 writeln('введите x: ');

 readln(x);

 z:=0;

 for i:=1 to x do begin

  y:=8*(i*i*i)-7*i+8;

  z:=z+y;

  writeln (y);

  end;

  writeln ('сумма все y= ',z);

  repeat until keypressed;

end.

 

Задача №35.  Найти сумму всех значений выражения y:=  на интервале [1,x].

Модель:

Исходные данные:  x

Результат: z

Связь: z:=z+y

Листинг:

program q35;

uses crt;

var i,x:integer;

y,z:real;

begin

 clrScr;

 writeln('введите x: ');

 readln(x);

 z:=0;

 for i:=1 to x do begin

  y:=(sin(i)*sin(i)+5)/(i*i+9);

  z:=z+y;

  writeln (y);

  end;

  writeln ('сумма всех y= ',z);

  repeat until keypressed;

end.

 

Задача №36.  Найти сумму всех значений выражения y:=  на интервале [a,b].

Модель:

Исходные данные:  x

Результат: z

Связь: z:=z+y

Листинг:

program q36;

uses crt;

var i,a,b:integer;

y,z:real;

begin

 clrScr;

 writeln('введите интервалы [a,b]: ');

 readln(a,b);

 z:=0;

 for i:=a to b do begin

  y:=i+((5*i+i)/(5*i*i+11));

  z:=z+y;

  writeln (y:4:2);

  end;

  writeln ('сумма всех y= ',z:4:2);

  repeat until keypressed;

end.

Задача №37.  Найти сумму всех значений выражения y:=  на интервале [a,b].

Модель:

Исходные данные:  x

Результат: z

Связь: z=z*y

Листинг:

program q37;

uses crt;

var i,a,b:integer;

y,z:real;

begin

 clrScr;

 writeln('введите интервалы [a,b]: ');

 readln(a,b);

 z:=1;

 for i:=a to b do begin

  y:=(sqrt(i)+6*i*i+9)/2;

  z:=z*y;

  writeln (y:4:2);

  end;

  writeln ('произведение всех y= ',z:4:2);

  repeat until keypressed;

end

Задача №38.  Найти подкоренное выражение произведения всех значений выражения y:=  на интервале [a,b].

Модель:

Исходные данные:  x

Результат: z

Связь: z:=sqrt(z)

Листинг:

program q38;

uses crt;

var i,a,b:integer;

y,z:real;

begin

 clrScr;

 writeln('введите интервалы [a,b]: ');

 readln(a,b);

 z:=1;

 for i:=a to b do begin

  y:=((2*i*i*i)+5)/(2*i*i*i*i+7);

  z:=z*y;

  writeln (y:4:2);

  end;

  z:=sqrt(z);

  writeln ('произведение всех y,вынесенное из-под корня= ',z:4:2);

  repeat until keypressed;

end.

 

Задача №39.  Вывести список шестизначных чётных чисел, делящихся

 без остатка на сумму своих цифр в 10 колонок.

Модель:

Исходные данные:  i,m

Результат: i

Связь: i:=i+2

Листинг:

program q39;

uses crt;

var i,j,k,m,j1,l:longint;

    i1:string;er:integer;

  begin

   clrscr;

   i:=100000;

    while i<=999998 do

     begin

      m:=0;str(i,i1);

      for j:=1 to 6 do

       begin

        val(i1[j],j1,er);m:=m+j1;

       end;

      if i mod m=0 then

       begin

        inc(l);inc(k);

         if k=11 then begin writeln('');k:=1; end;

        if l=240 then begin l:=0;readln; end;

        write(i,' ');

       end;i:=i+2;

     end;

   readln;

  end.

Задача №40.  Найти минимальное число, которое представляется суммой четырёх квадратов натуральных чисел не единственным образом.

Модель:

Исходные данные: k

Результат: h,a,b,c,d

Связь: k>1

Листинг:

program q40;

uses crt;

var h,a,b,c,d,k,cc:longint;

 begin

  clrscr;

   for h:=1 to 100 do

    for a:=1 to 100 do

     for b:=1 to 10 do

      for c:=1 to 10 do

       for d:=1 to 10 do

        begin

         if cc<>h then k:=0;

         if a*a+b*b+c*c+d*d=h then begin cc:=h;inc(k); end;

         if k>1 then begin

                      writeln(h,' - ',a,',',b,',',c,',',d);

                         readln;

                        end;

        end;

 end.

Задача №41.  На полке необходимо расставить шесть книг шести разных авторов сколькими способами.

Модель:

Исходные данные:  fl

Результат: k

Связь:

Листинг:

program q41;

uses crt;

var k,i1,i2,i3,i4,i5,i6,i7,i8,m,fl:integer;

    mm:string;

 begin

  clrscr;

   for i1:=1 to 6 do

    for i2:=1 to 6 do

     for i3:=1 to 6 do

      for i4:=1 to 6 do

       for i5:=1 to 6 do

        for i6:=1 to 6 do

         begin

          m:=i6+i5*10+i4*100+i3*1000+i2*10000+i1*100000;

          str(m,mm);fl:=0;

          for i7:=1 to 5 do

          for i8:=i7+1 to 6 do

          if mm[i7]=mm[i8]then fl:=1;

          if fl=0 then begin write(m,'  ');inc(k); end;

         end;

         writeln(' ');

    writeln(' количество:',k);

 end.

Задача №42.  Определить количество 4-хзначных чисел, в которых цифры нечетные.

Модель:

Исходные данные: 

Результат: k

Связь:

Листинг:

program q42;

uses crt;

var k,i1,i2,i3,i4,i5,fl:longint;

    mm:array[1..4]of longint;

 begin

  clrscr;

   for i1:=1 to 9 do

    for i2:=0 to 9 do

     for i3:=0 to 9 do

      for i4:=0 to 9 do

       begin

        mm[1]:=i4;

        mm[2]:=i3;

        mm[3]:=i2;

        mm[4]:=i1;

        fl:=0;

        for i5:=1 to 4 do

         if mm[i5] mod 2=0 then fl:=1;

        if fl=0 then begin write(i4,i3,i2,i1,' ');inc(k); end;

       end;

       writeln (' ');

    writeln(' количество:',k);

 end.

Задача №43.  Пара кроликов каждый год дает приплод двух (самку и самца), которые через 2месяца способны давать новый приплод. Сколько кроликов.

Модель:

Исходные данные: 

Результат: f(k)

Связь: f:=f(n-2)+f(n-1)

Листинг:

program q43;

uses crt;

  var k : integer;

  function f(n:integer):integer;

  begin

  clrScr;

     if n=0

        then f:=1

        else if n=1

               then f:=2

                else f:=f(n-2)+f(n-1);

   end;

   begin

     for k:=10 to 12 do

           writeln(f(k));

   end.

Задача №44.  Дан текст, определить кол-во слов «кот».

Модель:

Исходные данные:  t

Результат: k

Связь: k=k+1

Листинг

program q44;

uses crt;

var t,a:string;i,m,k:integer;

 begin

  clrscr;

   write('введите текст t=');readln(t);

  k:=0;m:=length(t);

  for i:=1 to m+3 do

   begin

    a:=copy(t,i,i+2);

     if (a='кот')

      then k:=k+1;

   end;

   writeln('слов кот ',k);

 end.:

Задача №45.  Дан текст, заменить слово «потоп» словом «потопкот».

Модель:

Исходные данные:  t

Результат: t

Связь: 'кот',t,i+5

Листинг:

program q44;

uses crt;

var t,a:string;i:integer;

 begin

  clrscr;

   write('введите текст t=');readln(t);

  for i:=1 to length(t) do

   begin

    a:=copy(t,i,i+4);

     if a='потоп'

      then insert('кот',t,i+5);

   end;

   writeln(' ',t);

  readln;

 end.

Задача №46.  Вычислить  сумму      22 + 23 + 24 +  … + 210.

Модель:

Исходные данные:  a

Результат: s

Связь: s:=s+a

Листинг:

program q46;

 uses crt;

 var    i, a, s : integer;

 begin

 clrScr;

 a:=2;  s:=0;

 for   i:=1   to   9  do begin

 a:=i*2;  s:=s+a;

 end;

 writeln(s);

 end.

Задача №47.  Дано  натуральное  число  n,  которое  вводится  с  клавиатуры.  Вычислить  сумму  всех  его  натуральных  делителей,  за  исключением  самого  числа.

Модель:

Исходные данные:  n

Результат: s

Связь: s:=s+i

Листинг:

program q47;

uses crt;

var   i, s, n : integer;

begin

clrScr;

readln(n);

s:=0;

for   i:=1   to   n div 2    do

if   (n mod i =0)   then    s:=s+i;

writeln(s);

repeat until keypressed;

end.

Задача №48.  Напечатать  все  натуральные   числа  от  1  до  1000,  количество    делителей   каждого   из   которых   равно   5.

Модель:

Исходные данные:  k

Результат: n

Связь:  n mod i = 0

Листинг:

program q48;

uses crt;

var   i, n : integer;

      k : byte;

begin

clrScr;

for   n:=1   to   1000   do

begin

k:=0;

for   i:=1  to   n   do

if    (n mod i = 0)   then    inc(k);

if   k=5  then   writeln(n)

end;

end.

Задача №49.  Найти  сумму  всех  целых  чисел  от  10  до  50.

Модель:

Исходные данные:  s

Результат: s

Связь: s=s+1

Листинг:

program q49;

uses crt;

var    i, s : integer;

begin

clrScr;

s:=0;

for   i:=10   to   50  do writeln(i);

for   i:=10   to   50  do s:=s+i;

writeln('сумма чисел=',s);

end.

Задача №50.  Подсчитать  количество  двузначных  чисел,  кратных  7.

Модель:

Исходные данные:  k

Результат: k

Связь: i mod 7=0

Листинг:

program q50;

uses crt;

var   i, k : integer;

begin

clrScr;

k:=0;

for   i:=10   to   99   do

if   i mod 7=0   then   inc(k);

writeln(k);

repeat until keypressed;

end.


 

Скачано с www.znanio.ru