Кабинет Информатики - Оператор цикла WHILE

Кабинет Информатики

Четверг, 28.03.2024, 22:54
Меню сайта
Наш опрос
Занимаетесь ли Вы репетиторством?
Всего ответов: 347
Новости...
Конкурсы
Позитивный контент-2017

Конкурсы для педагогов: Серая цапля
Победитель Общероссийского рейтинга школьных сайтов
Знак качества Просвещения

Фонд 21 века
Рейтинг образовательных сайтов mega-talant.com
Эволюция - бесплатные конкурсы для педагогов и школьников
Фонд 21 века
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Besucherzahler
счетчик посещений
доступность сайта Среднее и дошкольное образование

Проголосуй за наш сайт
Каталог webplus.info
Форма входа

Циклические алгоритмы

Оператор цикла WHILE

Задача 1.  Дано  целое  число а и натуральное (целое неотрицательное) число n. Вычислить а в степени n. {Введем целую переменную k, которая меняется от  0 до  n,  причем  поддерживается такое свойство: b = (a в степени k).}
USES Crt;
VAR
   A, N, B, K : INTEGER;
BEGIN
  ClrScr;
  Write(‘ Введите два значения   ‘);  ReadLn(A,N);
  K := 0; B := 1;
  While K <> N DO Begin
      K := K + 1;   B := B * A;
  End;
  Write(‘ A в степени N = ’,B);
END.

Другое решение той же задачи:
USES Crt;
VAR
   A, N, B, K : INTEGER;
BEGIN
ClrScr;     { Чистка экрана }
  Write(‘ Введите два значения   ‘);  ReadLn(A,N);
  K := N; B := 1;
  {A в степени N = B * (A в степени K)}
  While K <> 0 DO Begin
     K := K - 1;   B := B * A;
  End;
  Write(‘ A в степени N = ’,B);
END.

Задача 2. Даны натуральные числа а, b. Вычислить произведение а*b, используя в программе лишь операции +, -, =, <>.
USES Crt;
VAR
   A, B, C, K : INTEGER;
BEGIN
  Write(‘ Введите два значения ‘);   ReadLn(A,B); 
   K := 0; C := 0;
   While K <> B DO Begin
      K := K + 1;   C := C + A;
   End;
   {C = A * K и K = B, следовательно, C = A * B}
   Write(‘ A*B= ‘,C);
END.

Задача 3. Дано натуральное (целое неотрицательное) число  A  и целое положительное число D. Вычислить частное Q и остаток R при делении A на D, не используя операций DIV и MOD. (Согласно определению, А = Q * D + R, 0 <= R < D.)
USES Crt;
VAR 
   A, D, R, Q : INTEGER;
BEGIN
   ClrScr; 
   Write(‘ Введите два значения ‘);   ReadLn(a,d); 
    R := A; Q := 0;
   While Not (R < D) DO Begin
      R := R - D; {R >= 0}
      Q := Q + 1;
   End;
   WriteLn(‘ Частное = ’,Q);
   WriteLn(‘ Остаток = ’,R);
END. 

Задача 4. Каждый год урожайность повышается на 5%.  Через сколько лет урожай удвоится?
USES Crt;
VAR
 YR, KL: BYTE;  YRG: REAL;
Begin
 ClrScr;
 Write('Введите урожайность ');  ReadLn(YR);
 YRG:=YR;
 While (YRG <2*YR) Do Begin
    YRG:=YRG+0.05*YRG;
     KL:=KL+1;
 End;
 WriteLn('Новый урожай ',YRG:5:0);
 Write('Через ',KL,' лет урожай удвоится');
END.

Задача 5. Деду M лет, а внуку N лет. Через сколько лет дед станет вдвое старше внука.  И сколько при этом лет будет деду и внуку.
USES Crt;
VAR
   M,N: BYTE;  Kl: BYTE;
BEGIN
  ClrScr;
  Write('Введите количество лет деда  ');  ReadLn(m);
  Write('Введите количество лет внука  ');  ReadLn(n);
  KL:=0;
  While (M>2*N) DO  Begin
    M:=M+1;    N:=N+1;    KL:=KL+1;
  End;
  WriteLn(M,' лет деду');
  WriteLn(N,' лет внуку');
  WriteLn('Через ',KL,' лет дед вдвое станет старше внука');
END.

Задача 6. Поле засеяли цветами двух сортов на площади S1 и S2. Каждый год площадь цветов первого сорта увеличивается вдвое, а площадь второго сорта увеличивается втрое. Через сколько лет площадь первых сортов будет составлять меньше 10% от площади вторых сортов.
USES Crt;
VAR
   S1,S2:WORD;  KL:BYTE;
BEGIN
 ClrScr;
 Write('Введите площадь, которую засеяли цветами 1-го сорта ');  ReadLn(S1);
 Write('Введите площадь, которую засеяли цветами 2-го сорта ');  ReadLn(S2);
  KL:=1;
  While (S1>0.1*S2) DO Begin
    S1:=S1*2;    S2:=S2*3;    KL:=KL+1;
  End;
  WriteLn('Площадь, которую засеяли цветами 1-го сорта ',S1);
  WriteLn('Площадь, которую засеяли цветами 2-го сорта ',S2);
  WriteLn('Через ', kl,' лет');
END.

Задача 7. Составить программу перевода числа из 10 системы счисления в 2 систему счисления.
Для этой задачи представлено два решения.
a)
USES Crt;
VAR
   DES, OST, I, DW:INTEGER;
BEGIN
  ClrScr;
  Write('Введите десятичное число  '); ReadLn(DES);
  I:=1;
  While (DES>=2) DO Begin
      OST:=DES mod 2;
      DES:=DES div 2;
      DW:=DW+OST*I;
      I:=I*10;
  End;
  DW:=DW+DES*I;
  Write('Двоичная запись числа  ',DW);
END.

 

b)
USES Crt;
Const  A=10;
VAR
   DES, OST, I:INTEGER;
   DW:Array[1..100] OF INTEGER;
BEGIN
   ClrScr;
   Write('Введите десятичное число  '); ReadLn(des);
   I:=1;
   While (des>=2) DO Begin
        OST:=DES mod 2;
        DES:=DES div 2;
        DW[I]:=OST;
        I:=I+1;
   End;
   DW[I]:=DES;
   FOR I:=I DownTo 1 DO
        Write(DW[I]);
END.
.....................................................................................................................................
Практические задания
.....................................................................................................................................

  1. Составить программу, печатающую квадраты всех натуральных чисел от 0 до заданного натурального n.
  2. Дано  натуральное  n,  вычислить n!    (0!=1, n! = n * (n-1)!).
  3. Последовательность  Фибоначчи  определяется  так: a(0)= 1, a(1) = 1, a(k) = a(k-1) + a(k-2) при k >= 2.  Дано  n, вычислить a(n).
  4. К старушке на обед ходят кошки. Каждую неделю две кошки приводят свою подружку. В доме у старушки 100 мисок. Через какое время появятся лишние кошки, и сколько кошек при этом останется голодными.
  5. Известна сумма номеров страниц, определить номер страницы.
  6. Лягушка каждый последующий прыжок делает в два раза короче предыдущего. Достигнет ли она болота и за сколько прыжков. Длину первого прыжка задайте самостоятельно.
Поиск
Календарь
«  Март 2024  »
ПнВтСрЧтПтСбВс
    123
45678910
11121314151617
18192021222324
25262728293031


Социальные сети
Официальная группа в ВК Официальная группа в ОК Официальная группа в Телеграм
Портфолио


Год семьи
Год культурного наследия народов России
Перепись населения-2021
Школьник помнит
Полезные ссылки
  • Учительский портал
  • Педсовет.ORG
  • Дневник.ру
  • ProШколу.ru
  • Pedsovet.su
  • Завуч.инфо
  • Методисты.ру
  • Методсовет
  • УчМет
  • ИнформатикУрок
  • Менеджер образования
  • Сеть творческих учителей
  • Сообщество учителей ИКТ


  • Узнай свой IP адрес
    Перечень олимпиад на 2022-2023 учебный год







    Портал о суевериях, поверьях и приметах народов России