Задания по теме "Операторы цикла"

  1. program ex_1;
    var n: longint;
        a: 0..9;
    begin
    	write('Введите натуральное число:');
    	readln(n);
    	a:= n mod 10;
    	while n>=10 do n:= n div 10;
    	writeln('Сумма ', a+n)
    end.
    
  2. Program Pr;
    Var K, I, D, S, N: Integer;
    Begin WriteLn('Введите натуральное число N: '); ReadLn(N);
    WriteLn('Введите значение K: '); ReadLn(K);
    D := 2; I := 0;
    While D <= N div 2 + 1 Do
    Begin If (N mod D = 0) And (D > K) Then I := I + 1;
    D := D + 1
    End; 
    WriteLn(I)
    End.
    
  3. Program Pr;
    Var K, I, D, S: Integer;
    Begin S := 0;
    For I := 1 To 15 Do
    Begin D := 2;
    K := 0;
    While D <= I div 2 + 1 Do
    Begin If I mod D = 0 Then K := K + 1;
    D := D + 1
    End;
    If K = 5 Then S := S + I;
    End
    End.
    
  4. Program Pr;
    Var K, I, D, S: Integer;
    Begin WriteLn('Введите натуральное число N: '); ReadLn(N);
    WriteLn('Введите значение K: '); ReadLn(K);
    D := 3; I := 0;
    While D <= N div 2 + 1 Do
    Begin If (N mod D = 0) And (D > K) Then I := I + 1;
    D := D + 2
    End;
    WriteLn(I)
    End.
    
  5. Program Pr;
    Var K, M, I, D, A, B: Integer;
    Begin WriteLn(‘Введите A и B: ’); ReadLn(A,B);
    WriteLn(‘Введите значение M: ’); ReadLn(M);
    For I := A To B Do
    Begin D := 2;
    K := 0;
    While D <= I div 2 + 1 Do
    Begin 	If I mod D = 0 Then K := K + 1;
    D := D + 1
    End;
    If K > M Then WriteLn(I)
    End
    End.
    
  6. Program Pr;
    Var S: LongInt; A, B, C: 0..9; I: 100..999;
    Begin S := 0;
    For I := 100 To 120 Do
    Begin A := I div 100;
    B := I div 10 mod 10;
    C := I mod 10;
    If (A mod 2 = 1) and (B mod 2 = 1) and (C mod 2 = 1)
    Then S := S + I;
    End;
    WriteLn(S)
    End.
    
  7. Program Pr;
    Var S, M, I, D, A, B: Integer;
    Begin WriteLn(‘Введите A и B: ’); ReadLn(A,B);
    WriteLn(‘Введите значение M: ’); ReadLn(M);
    For I := A To B Do
    Begin D := 3;
          S := 0;
          While D <= I div 2 + 1 Do
          Begin If I mod D = 0 Then S := S + 1;
                D := D + 2
          End;
          If S = M Then WriteLn(I);
    End
    End.
    
  8. Program Kr_2_3;
    Var A, St : LongInt; K : 0..9;
    Begin
       Repeat
         Write('Введите натуральное число (не более чем четырехзначное): '); ReadLn(A)
       Until (A > 0) And (A < 10000);
       Write('Введите цифру: '); ReadLn(K); St := 1;
       While A Div St <> 0 Do
       Begin
           A := A Div (10 * St) * 100 * St + K * 10 * St + A Mod (10 * St);
           St := St * 100
       End; WriteLn(A)
    End.
    
  9. Program Kr_2_3;
    Var N, St : LongInt;
    Begin
      Write('Введите натуральное число: '); ReadLn(N); St := 1;
      While N Div St <> 0 Do
         If Not Odd(N Mod (St * 10) Div St)
         Then N := N Div (St * 10) * St + N Mod St Else St := St * 10;
      WriteLn('Ответ: ', N);
    End.
    
  10. Program Kr_2_3;
    Var N, St : LongInt;
    Begin
      Write('Введите натуральное число: '); ReadLn(N); St := 1;
      While N Div St <> 0 Do
         If Not Odd(N Mod (St * 10) Div St)
         Then N := N Div (St * 10) * St + N Mod St
         Else St := St * 10;
      WriteLn('Ответ: ', N);
    End.
    
  11. Program Kr_2_3;
    Var N, Vs, St : LongInt;
    Begin
        Write('Введите натуральное число (не более чем девятизначное)'); ReadLn(N);
        If N > 9 Then
        Begin
          Vs := N; St := 1;
          While Vs > 9 Do Begin St := St * 10; Vs := Vs Div 10 End;
          N := N Mod St Div 10 * 10 + N Mod 10 * St + Vs
        End;
        WriteLn('Ответ: ', N)
    End.
    
  12. Program Kr_2_3;
    Var N : LongInt; M : 0..9;
    Begin
        Write('введите натуральное число: '); ReadLn(N); M := 0;
        While N <> 0 Do
        Begin
            If N Mod 10 > M Then M := N mod 10; N := N div 10
        End;
        WriteLn('Ответ: ', M)
    End.
    
  13. Program P2;
    Var k, k1, m, n, a, b: integer;
    Begin
    Write (‘Введите число’); Readln (n);
    m := n; k:=0; k1 := 0;
    While m<>0 do
    Begin k:=k+1; m:=m div 10; end;
    While n<>0 do
    Begin
    a:=n mod 10; b:=n mod 100 div 10;
    if  a+1=b then k1:=k1+1; n:= n div 10;
    End;
    If k=k1+1 then Writeln (‘Да’)  else Writeln (‘Нет’);
    End.
    
  14. Program P2;
    var n, m, i, j: longint; r, f : boolean;
    Begin
    Repeat
    Write ('Введите число n'); Readln (n);
    Write ('Введите число m'); Readln (m);
    Until (n>0) and (m>0) and (n<m);
    R:=false;
    For i:=n to m do
    Begin
    f:=false;
    For j:=2 to i div 2 do If i mod j =0 then f:=true;
    If not f then begin R:=true; Writeln (i:6); end;
    End;
    If not R then writeln ('Таких чисел нет');
    End.
    
  15. Program Pr; 
    Var n, i, p: longint; L: boolean;
    begin
          write('Введите число '); readln(n);
          L := true;
          p := 1; i := 1;
          while (i<=11) and L do
          begin
             p := p * i;
             if p > n then begin writeln(p); L := false end;
             i:=i+1;
          end;
          if L then writeln('такого числа нет');
    end.
    
  16. 	   Program Pr;
               Var n, i, s, s1, a: integer;
               Begin 
                         Write (‘введите натуральное число: ’); Readln (n);
    		     s:=0;
    		     a:=n;
    		     while a<>0 do begin s:=s + a mod 10; a:= a div 10 end;
                         For i:=1 to n-1 do
    		     begin
    		      s1:=1;
    		      a:=i;
    		      while a<>0 do begin s1 := s1 * (a mod 10); a:= a div 10 end;
    		      if s=s1 then writeln(i)
                         end
               End.        
    
  17. 	   Program Pr;
               Var n, x, k, i: integer;
               Begin 
                         Write (‘введите количество элементов: ’); Readln (n);
                         k:=0; 
                         For i:=1 to n do
                          Begin write (‘введите элемент: ’);
                                Readln(x); 
                                If x=0 then k: =k+1
                         End;
                         Writeln (k);
                End.        
    
  18. 	   Program Pr;
               Var n, x: integer;
               Begin 
                         Write (‘введите количество элементов: ’); Readln (n);
                         For x:=0 to n do
                         Writeln (x*x+x+17);
               End.        
    
  19. 	   Program Pr;
               Var n, x: integer;
               Begin 
                         Write (‘введите количество элементов: ’); Readln (n);
                         For x:=0 to n do
                         Writeln (x*x+x+41);
               End.        
    
  20. 	   Program Pr;
               Var n, x: integer;
               Begin 
                         Write (‘введите количество элементов: ’); Readln (n);
                         For x:=0 to n do
                         Writeln (2*x*x+29);
               End.        
    
  21. 	   Program Pr;
               Var n, i, s, s1, a: integer;
               Begin 
                         Write (‘введите натуральное число: ’); Readln (n);
    		     s:=0;
    		     a:=n;
    		     while a<>0 do begin s:=s + a mod 10; a:= a div 10 end;
                         For i:=1 to n-1 do
    		     begin
    		      s1:=0;
    		      a:=i;
    		      while a<>0 do begin s1:=s1 + a mod 10; a:= a div 10 end;
    		      if s=s1 then writeln(i)
                         end
               End.        
    
  22. 	   Program Pr;
               Var m, n, i, j, kd, mkd, x: integer;
               Begin 
                         Write (‘введите натуральные числа m, n (m<n): ’); Readln (m, n);
    		     mkd:=0; x:=m;
    		     for i:=1 to m do if m mod i=0 then mkd:=mkd+1;
    		     for i:=m+1 to n do
                         begin
                           kd:=0;                     
                           for j:=1 to i do
                                  if i mod j=0 then kd:=kd+1;
                           if kd>mkd then begin mkd:=kd; x:=i end
                         end;
                         writeln(x)
               End.        
    
  23. 	   Program Pr;
               Var n, i, kd: integer;
               Begin 
                         Write ('введите натуральное число: ’); Readln (n);
    		     kd:=0;
    		     for i:=1 to n do if n mod i=0 then kd:=kd+1;
                         if kd = 2 then writeln('простое');
                         if kd = 1 then writeln('число 1');
                         if kd > 2 then writeln('составное');
               End.        
    
  24. 	   Program Pr;
               Var m, n, x, y: integer;
               Begin 
                         Write ('введите натуральные числа m, n (m<>n): '); Readln (m, n);
    		     x:=m; y:=n;
                         while m<>n do
                             if m>n then m:=m-n else n:=n-m;
                         writeln('Результат: ', x*y div m)
               End.        
    
  25. 	   Program Pr;
               Var a, b, c, d, m, n: integer;
               Begin 
                         Write ('введите натуральные числа a, b, c, d: '); Readln (a, b, c, d);
    		     m:=a*d; n:=b*c;
                         while m<>n do
                             if m>n then m:=m-n else n:=n-m;
                         writeln('Результат: ', a*d div m, '/', b*c div m)
               End.        
    
  26. 	   Program Pr;
               Var a, b, c, d, m, n: integer;
               Begin 
                         Write ('введите натуральные числа a, b, c, d: '); Readln (a, b, c, d);
    		     m:=a*c; n:=b*d;
                         while m<>n do
                             if m>n then m:=m-n else n:=n-m;
                         writeln('Результат: ', a*c div m, '/', b*d div m)
               End.        
    
  27. 	   Program Pr;
               Var a, b, c, d, m, n: integer;
               Begin 
                         Write ('введите натуральные числа a, b, c, d: '); Readln (a, b, c, d);
    		     m:=a*d+b*c; n:=b*d;
                         while m<>n do
                             if m>n then m:=m-n else n:=n-m;
                         writeln('Результат: ', (a*d+b*c) div m, '/', b*d div m)
               End.        
    
  28. 	   Program Pr;
               Var a, b, c, d, m, n: integer;
               Begin 
                         Write ('введите натуральные числа a, b, c: '); Readln (a, b, c);
    		     m:=a; n:=b;
                         while m<>n do
                             if m>n then m:=m-n else n:=n-m;
                         n:=c;
                         while m<>n do
                             if m>n then m:=m-n else n:=n-m;
                         if m=1 then writeln('взаимно простые') else writeln('нет')
               End.        
    
  29. 	   Program Pr;
               Var a, b, c, d, m, n: integer;
               Begin 
                         Write ('введите натуральные числа a, b, c: '); Readln (a, b, c);
    		     m:=a; n:=b;
                         while m<>n do
                             if m>n then m:=m-n else n:=n-m;
                         n:=c;
                         while m<>n do
                             if m>n then m:=m-n else n:=n-m;
                         writeln('Результат: ', a*b*c div m)
               End.        
    
  30. 	   Program Ex_30;
               Var n: integer; mi, ma: 0..9;
               Begin 
                         Write ('введите натуральное число: '); Readln (n);
    		     mi:=9; ma:=0;
                         while n<>0 do
                         begin
                            if n mod 10 < mi then mi:= n mod 10;
                            if n mod 10 > ma then ma:= n mod 10;
                            n := n div 10
                         end;
                         writeln('Результат: ', mi*ma)
               End.        
    
  31. 	   Program Ex_31;
               Var n: integer; mi, ma: 0..9;
               Begin 
                         Write ('введите натуральное число: '); Readln (n);
    		     mi:=9; ma:=0;
                         while n<>0 do
                         begin
                            if n mod 10 < mi then mi:= n mod 10;
                            if n mod 10 > ma then ma:= n mod 10;
                            n := n div 10
                         end;
                         writeln('Результат: ', ma-mi)
               End.        
    
  32. 	   Program Ex_32;
               Var n: integer; mi, ma: 0..9;
               Begin 
                         Write ('введите натуральное число: '); Readln (n);
    		     mi:=9; ma:=0;
                         while n<>0 do
                         begin
                            if n mod 10 < mi then mi:= n mod 10;
                            if n mod 10 > ma then ma:= n mod 10;
                            n := n div 10
                         end;
                         writeln('Результат: ', mi+ma)
               End.        
    
  33. 	   Program Ex_33;
               Var n: integer; mi, ma: 0..9;
               Begin 
                         Write ('введите натуральное число: '); Readln (n);
    		     mi:=9; ma:=0;
                         while n<>0 do
                         begin
                            if n mod 10 < mi then mi:= n mod 10;
                            if n mod 10 > ma then ma:= n mod 10;
                            n := n div 10
                         end;
                         writeln('Результат: ', ma div mi)
               End.        
    
  34. 	   Program Ex_34;
               Var n: integer; mi, ma: 0..9;
               Begin 
                         Write ('введите натуральное число: '); Readln (n);
    		     mi:=9; ma:=0;
                         while n<>0 do
                         begin
                            if n mod 10 < mi then mi:= n mod 10;
                            if n mod 10 > ma then ma:= n mod 10;
                            n := n div 10
                         end;
                         writeln('Среднее арифметическое: ', (mi+ma)/2)
               End.        
    
  35. 	   Program Ex_35;
               Var n: integer; mi, ma: 0..9;
               Begin 
                         Write ('введите натуральное число: '); Readln (n);
    		     mi:=9; ma:=0;
                         while n<>0 do
                         begin
                            if n mod 10 < mi then mi:= n mod 10;
                            if n mod 10 > ma then ma:= n mod 10;
                            n := n div 10
                         end;
                         writeln('Среднее геометрическое: ', sqrt(ma*mi));
               End.        
    
  36. 	   Program Ex_36;
               Var n: integer; mi, ma: 0..9;
               Begin 
                         Write ('введите натуральное число: '); Readln (n);
    		     mi:=9; ma:=0;
                         while n<>0 do
                         begin
                            if n mod 10 < mi then mi:= n mod 10;
                            if n mod 10 > ma then ma:= n mod 10;
                            n := n div 10
                         end;
                         writeln('Результат: ', 1000*ma+100*ma+10*mi+mi);
               End.        
    

 


Рейтинг ресурсов УралWeb

 

© А.П. Шестаков, 2009
Сайт создан в системе uCoz