Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Факториал отрицательного числа не существует.






Теперь составим программу:

Program Factorial;

Var F, i, n: integer;

Begin

Writeln ('Введите натуральное число '); Readln (n);

F: =1;

For i: =1 to n do

F: =F*i;

writeln ('Факториал числа ', n, '=', F);

End.

Пример 3. Вычисление суммы ряда:

 

Program summation;

Var

i, n: Word;

summa: Real;

Begin

Write (‘Введите количество слагаемых n=’);

ReadLn (n);

summa: =0;

for i: =1 to n do

summa: =summa+1/sqr(i);

WriteLn (‘S=’, summa);

End.

5.2. Ц и к л с п р е д у с л о в и е м (While)

Общая форма записи цикла While…do

 

While < условие> do

Begin

< серия операторов>;

end;

Принцип действия цикла While:

Вначале проверяется условие стоящие после слова While. Если оно соблюдается (т.е. истинное), то выполняется тело цикла (слово do – означает делать, выполнять) заключённое в операторные скобки begin…end; а затем происходит перепроверка условия. Если оно опять будет соблюдается, то тело цикла выполнится ещё раз. Этот процесс будет продолжаться до тех пор, пока условие будет соблюдаться. Как только условие перестанет соблюдаться (т.е. станет ложным), цикл завершит свою работу.

Условие в цикле While проверяется только перед выполнением цикла, но не проверяется в процессе выполнения самого тела цикла.

Если поставленное условие не соблюдается с самого начала, то тело цикла не выполнится ни разу.

Выполнение цикла пока может и не завершиться, если условие будет всё время соблюдаться (говорят, что происходит зацикливание).

 

Рассмотрим следующие примеры:

Пример 1: Составить программу для вычисления суммы первых 10 натуральных чисел.

 

Program Summa;

Var i, S: byte;

Begin

i: =1;

While i< =10 do

Begin

S: =S+i;

inc (i);

end;

Writeln (‘Сумма S=’, S);

End.

Пример 2: Составить программу для вычисления первых шести членов последовательности, заданной формулой n -го члена: xn=2n-1.

Program progress;

Var x, n: integer;

Begin

Writeln;

n: =1;

While n< =6 do

Begin

x: =2*n-1;

write (x, ' ');

inc (n);

end;

End.

Пример 3: Составить программу, подсчитывающую сумму S, 1000 первых членов ряда.

 

Program summa;

Var s: real;

n: integer;

Begin

s: =0;

n: =0;

While n < 1000 do

Begin

n: =n+1;

s: =s+1/n;

end;

Writeln (s);

End.

 

 

5.3. Ц и к л с п о с т у с л о в и е м (Repeat…Until):

 

Иногда, приходится сталкиваться с такими задачами, когда нужно, чтобы выполнилось какое-либо действие, а потом проверилось условие повторения этого действия. Для этого служит цикл Repeat…Until.

 

Общая форма записи цикла Repeat…Until

 

Repeat

< тело цикла>;

Until < условие>;

Принцип действия цикла Repeat…Until:

Вначале выполняется тело цикла следующие после слова Repeat (повторять). Когда компилятор доходит до слова Until (до) происходит проверка поставленного условия. Если оно не соблюдается (т.е. оно ложное), то тело цикла выполняется ещё раз. Как только условие станет соблюдаться (т.е. будет истинным) цикл Repeat…Until завершит свою работу.

Для цикла Repeat…Until характерны 4 особенности:

1. Тело цикла выполняется, по крайней мере, один раз.

2. Тело цикла выполняется пока условие ложное.

3. В теле цикла может находиться произвольное количество операторов без операторных скобок begin…end.

4. Один из операторов тела цикла должен влиять на значение условия, иначе цикл будет бесконечным.

 

Рассмотрим примеры с использованием цикла Repeat…Until.

Пример 1. Дана последовательность чисел, оканчивающаяся нулём. Составить программу для подсчёта суммы этой последовательности.

 

Program Posledovatelnost;

Var S, n: integer;

Begin

S: =0;

Repeat

Writeln (‘Введите число: ’); Readln (n);

S: =S+n;

Until n=0;

Writeln (‘Сумма чисел=’, S);

End.

 

Пример 2. Составить программу для подсчёта количества цифр в введённом числе.

 

Program Kolichestvo;

Var k, n, m: integer;

Begin

k: =0;

Writeln ('Введите число n='); Readln (n);

M: =n;

Repeat

m: =m div 10;

inc (k);

Until m=0;

Writeln ('Количество цифр в числе ‘, n, ’=', k);

End.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.