Стандартные задачи на циклы

Стандартные задачи на циклы thumbnail

Простейшие алгоритмы

№1. Сумма вводимых целых чисел

begin var n := ReadInteger(‘Введите число слагаемых:’); var s := 0.0; for var i:=1 to n do begin var x := ReadReal($’Введите слагаемое №{i}:’); s += x; end; ln($’Сумма равна {s}’); end.

В алгоритме используются интерполированные строки вида $’Сумма равна {s}’. Они начинаются с $. Выражение в фигурных скобках, расположенное в такой строке, заменяется на его значение.

№2. Произведение целых чисел

begin var n := ReadInteger(‘Введите число множителей: ‘); var p := 1.0; for var i:=1 to n do begin var x := ReadReal(‘Введите множитель: ‘); p *= x; end; ln($’Произведение равно {p}’); end.

№3. Двойной факториал n!!=n*(n-2)*(n-4)*…*2 (или 1)

begin var x := ReadInteger(‘Введите x: ‘); var p := 1; while x>=2 do begin p *= x; x -= 2; end; ln($’Двойной факториал равен {p}’); end.

№4. Сколько нечетных среди n введенных

begin var n := ReadInteger(‘Введите n: ‘); var c := 0; for var i:=1 to n do begin var x := ReadInteger(‘Введите целое число: ‘); if x mod 2 <> 0 then c += 1; end; ln($’Количество нечетных равно {c}’); end.

№5. Защита от неверного ввода

begin var x: real; repeat x := ReadReal(‘Введите x>0: ‘); if x<=0 then ln(‘Неверный ввод’); until x>0; end.

№6. Табулирование функции f(x) на отрезке в точках, разбивающих отрезок на N частей

Дан отрезок [a,b]

f(x: real) := sin(x)*x; begin var N := ReadInteger(‘Введите N: ‘); Assert(N>0); var (a,b) := ReadReal2(‘Введите a и b: ‘); var h := (b-a)/N; var x := a; loop N+1 do begin Writeln(x:5:2,f(x):10:4); x += h; end; end.

№6a. Решение, использующее while. Погрешность округления и вычислительная погрешность

f(x: real): real:= sin(x)*x; begin var N:=ReadInteger(‘Введите N: ‘); Assert(N>0); var (a,b):=ReadReal2(‘Введите a и b: ‘); var h := (b-a)/N; var x := a; while x <= b+h/2 do begin writeln(x:5:2,f(x):10:4); x += h; end; end.

Рекуррентные соотношения

№7. Вывод 10 первых степеней двойки

begin var x := 2; for var i := 1 to 10 do begin writeln(i:2,x:5); x *= 2; end; end.

№8. Вывод всех двухзначных чисел, кратных 5

begin var x := 10; while x < 100 do begin writeln(x:3); x += 5; end; end.

№9. Вывод n первых чисел Фибоначчи

begin var n := ReadInteger(‘Введите целое число n (n > 1): ‘); Assert(n>1); var (a,b) := (1,1); (a,b); loop n-2 do begin (a,b):=(b,a+b); (b); end; end.

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

№10. Найти НОД(A,B), используя алгоритм Евклида:

НОД(A,B) = НОД(B,A mod B); НОД(A,0) = A

begin var (a,b):=ReadInteger2(‘Введите целые числа A и B: ‘); while b<>0 do (A,B):=(B,A mod B); ln($’НОД(A,B) = {A}’); end.

№11. Найти сумму цифр целого числа m

begin var m := ReadInteger(‘Введите целое число m: ‘); var (s,m1) := (0,abs(m)); while m1 > 0 do begin s += m1 mod 10; m1 := m1 div 10; end; ln($’Сумма цифр числа {m} равна {s}’); end.

Для работы с отрицательными числами в алгоритме используется стандартная функция abs(x) возвращающая модуль от x.

Максимумы и минимумы

№12. Найти max из введенных чисел

begin var n := ReadInteger(‘Введите целое число n (n>0): ‘); assert(n>0); var x := ReadReal(‘Введите 1 число: ‘); var max := x; for var i := 2 to n do begin x := ReadReal($’Введите {i} число: ‘); if max < x then max := x; end; ln($’Максимальное из введенных чисел: {max}’); end.

№12a. Найти min, удовлетворяющее условию p(x)

// Условие взятое как пример (Если число положительное, то условие p(x) возвращает true, иначе false) p(x: real): boolean:=x > 0; begin var n := ReadInteger(‘Введите целое число n (n>0): ‘); assert(n>0); var min := real.MaxValue; for var i := 1 to n do begin var x := ReadReal($’Введите {i} число: ‘); if (x < min) and p(x) then min := x; end; if min = real.MaxValue then ln(‘Нет чисел, удовлетворяющих условию’) else ln($’Минимальное из введенных чисел, удовлетворяющее условию: {min}’); end.

Суммирование рядов (конечных и бесконечных)

№13. Вычислить Σ(i=1..n) a^i/i!

begin var a:=ReadReal(‘Введите a: ‘); var n:=ReadInteger(‘Введите n (n>0): ‘); assert(n>0); var x := a; var s := x; for var i := 2 to n do begin x *= a / i; s += x; end; ln($’Сумма = {s}’); end.

№13a. Вычислить Σ(i=1..∞) (-1)^i * a^i/i!

begin var a:=ReadReal(‘Введите a (0 < a < 1): ‘); assert((a>0) and (a<1)); var eps := 0.0001; var i := 1; var s := 0.0; var y := -a; repeat s += y / i; i += 1; y *= -a; until abs(y/i) < eps; ln($’Сумма = {s}’); end.

Поиск значения

№14. Есть ли среди введенных число k?

var n,k: integer; begin write(‘Введите целые числа n (n>0) и k: ‘); readln(n,k); assert(n>0); var Exists := false; for var i := 1 to n do begin write(‘Введите ‘, i, ‘ целое число: ‘); var x := ReadInteger; if x = k then begin Exists := true; break; end; end; if Exists then writeln(‘Число ‘, k, ‘ было введено’) else writeln(‘Число ‘, k, ‘ не было введено’); end.

№14b. Есть ли среди введенных число k? (то же с использованием while)

var n,k: integer; begin write(‘Введите целые числа n (n>0) и k: ‘); readln(n,k); assert(n>0); var Exists := false; var i := 1; while (i <= n) and not Exists do begin write(‘Введите ‘, i, ‘ целое число: ‘); var x := ReadInteger; i += 1; if x = k then Exists := true; end; if Exists then writeln(‘Число ‘, k, ‘ было введено’) else writeln(‘Число ‘, k, ‘ не было введено’); end.

№15. Является ли число N>1 простым?

begin write(‘Введите целое число N (N>1): ‘); var N := ReadInteger; assert(N>1); var IsPrime := True; for var i := 2 to round(sqrt(N)) do if N mod i = 0 then begin IsPrime := False; break; end; if IsPrime then writeln(‘Число ‘, N, ‘ является простым’) else writeln(‘Число ‘, N, ‘ является составным’); end.

Другие алгоритмы

№16. Разложение числа на простые множители

begin var x := ReadInteger(‘Введите целое число x (x>1): ‘); assert(x>1); var i := 2; write(x, ‘ = 1’); repeat if x mod i = 0 then begin (‘*’, i); x := x div i; end else i += 1; until x = 1; end.

№17. Вычисление значения многочлена в точке x по схеме Горнера

var x,a: real; n: integer; begin write(‘Введите x: ‘); readln(x); write(‘Введите степень многочлена n (n>0): ‘); readln(n); assert(n>=0); write(‘Введите коэффициенты: ‘); readln(a); var s := a; for var i := 1 to n do begin write(‘Введите a_{‘, i+1,’}: ‘); readln(a); s := s*x + a; end; writeln(‘Значение многочлена p(x) = a_{1}*x^n + a_{2}*x^(n-1) + … + a_{n}*x + a_{n+1} в точке x = ‘, x, ‘ равно ‘, s); end.

Читайте также:  Повышения давления в менструальном цикле

№18. Дана непрерывная на отрезке функция f(x), имеющая на отрезке ровно один корень. Найти его методом половинного деления

Дан отрезок [a,b] (f(a)*f(b)<=0)

// В качестве примера взяты eps = 0.0001 и функция f(x) = sin(x) const eps = 0.0001; const f = sin; var a,b: real; begin write(‘Введите числа a и b (a<b): ‘); readln(a,b); assert(a<b); var fa := f(a); var fb := f(b); assert(fb*fa<0); while (b-a) > eps do begin var x := (b+a)/2; var fx := f(x); if fa*fx <= 0 then b := x; else begin a := x; fa := fx; end; end; writeln(‘Корень функции на [a,b] равен ‘,(b+a)/2); end.

© Буцев Виктор, Белоусько Тихон, Зуев Семен, Гончаров Владислав, Батраков Михаил, Гаджиев Казанфар, Пак Владислав

Источник

Решенные задачи Pascal: операторы цикла

Pascal операторы цикла – Repeat

Repeat 1: Даны положительные числа A и B (A>B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Не используя операции умножения и деления, найти количество отрезков B, размещенных на отрезке A.

Проверить:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15var a,b,temp,c:integer; flag: boolean; begin writeln(‘A=’); readln(a); writeln(‘B=’); readln(b); temp:=a; repeat temp:=temp-b; inc(c); until temp-b>=0; writeln(‘result: ‘,c); end.

Pascal операторы цикла – While

While 1: Определите значение переменной P после выполнения следующего фрагмента программы:

1 2 3 4 5P:=1; i:=3; while i <= 9 do begin P := P * (i div 3); i := i + 1; end;

Варианты:

1) 1

2) 3

3) 9

4) 24

Проверить:

While 2: Определите значение переменной S после выполнения следующего фрагмента программы:

1 2 3 4 5S:=0; i:=7; while i > 1 do begin S := S + i div 2; i := i – 1; end;

Варианты:

1) S = 0

2) S = 7

3) S = 12

4) S = 24

Проверить:

While 3: Даны целые положительные числа N и K. Используя только операции сложения и вычитания, найти частное от деления нацело N на K, а также остаток от этого деления.

Решение данного задания смотрите в видео уроке по Паскалю:

While 4: Дано целое число N (> 0). С помощью операций деления нацело и взятия остатка от деления определить, имеется ли в записи числа N цифра «2». Если имеется, то вывести TRUE, если нет – вывести FALSE.

Проверить:

1 2 3 4 5 6 7 8 9 10 11 12 13 14var number:integer; flag: boolean; begin writeln(‘введите целое число (number>0) number=’); readln(number); flag:=false; while (number div 10)>0 do begin if (number mod 10) = 2 then flag:=true; number:=number div 10; end; writeln(flag); end.

While 5:

Дано целое число N (>1). Найти наибольшее целое число K, при котором выполняется неравенство 3K<N

* Из задачника М. Э. Абрамян (While10)

Предлагаем посмотреть разбор задачи на видео:

While 6:

Дано число A (>1). Вывести наибольшее из целых чисел K, для которых сумма 1+1/2+…+1/K будет меньше A, и саму эту сумму

* Из задачника М. Э. Абрамян (While14)

Проверить:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15var Temp:Real; A,K :Integer; begin Write(‘Введите A: ‘); Readln(A); K:=0; Temp:=0; while Temp<=A do begin inc(K,1); Temp:=Temp+1/K; end; Writeln(K-1,’ ‘,Temp-1/K); end.

While 7:

Дано целое число K и набор ненулевых целых чисел; признак его завершения – число 0. Вывести количество чисел в наборе, меньших K

* Из задачника М. Э. Абрамян (Series14)

Проверить:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17var i,R,K:Longint; begin write(‘Введите K : ‘); readln(K); R:=1; i:=0; while(R<>0) do begin write(‘Введите число из набора: ‘); Readln(R); if R<K then i:=i+1; end; i:=i-1; Writeln(i); readln; end.

While 8:

Спортсмен-лыжник начал тренировки, пробежав в первый день 10 км. Каждый следующий день он увеличивал длину пробега на P процентов от пробега предыдущего дня (P – вещественное, 0<P<50). По данному P определить, после какого дня суммарный пробег лыжника за все дни превысит 200 км, и вывести найденное количество дней K (целое) и суммарный пробег S (вещественное число).

* Из задачника М. Э. Абрамян (While16)

Проверить:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17var P, S, D:Real; K :Integer; begin Write(‘Введите процент: ‘); Readln(P); K:=1; D:=10; S:=10; while S<=200 do begin inc(K,1); D:=D+D*P/100; S:=S+D; end; Writeln(K,’ ‘,S); end.

Pascal операторы цикла – For

For 1: Дано вещественное число – цена 1 кг конфет. Вывести стоимость 0.1, 0.2, …, 1 кг конфет.

* Из задачника М. Э. Абрамян

Проверить:

1 2 3 4 5 6 7 8 9 10 11 12var c,m:real; i:integer; begin writeln(‘Цена?’); readln(c); m:=0.1; for i := 1 to 10 do begin writeln(‘ price of ‘,m, ‘ kg = ‘,c*m); m:=m+0.1; end; end.

For 2: Даны два целых числа A и B ( A<B ). Вывести в порядке убывания все целые числа, расположенные между A и B (не включая числа A и B), а также количество N этих чисел.

* Из задачника М. Э. Абрамян

Проверить:

1 2 3 4 5 6 7 8 9 10 11var a, b, i: integer; begin writeln(‘A:’); readln(a); writeln(‘B:’); readln(b); for i:= b-1 downto a+1 do write(i:3 ); writeln; writeln(‘kolvo: ‘,b-a-1); end.

For 3:

Дано целое число N>0. Найти сумму

* Из задачника М. Э. Абрамян (For11)

Проверить:

1 2 3 4 5 6 7 8 9var N, Rez,i :Integer; begin Write(‘Введите N: ‘); Readln(N); rez:=0; For i:=0 to N do Rez:=Rez+sqr(N+i); Writeln(Rez); end.

Сейчас предлагаем решить сложную олимпиадную задачу на Паскале:

Пять делителей: Найти сумму всех чисел от 1 до заданного n, имеющих ровно пять делителей. Единица и само число входят в число его делителей

Проверить:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18var c,n,s,k,i:integer; begin c:=0; s:=0; readln(n); for i:=2 to n do begin k:=i; while k>0 do begin if i mod k = 0 then c:=c+1; k:=k-1; end; if c= 5 then s:=s+i; c:=0; end; writeln(s); end.

Источник

Оператор цикла 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. Лягушка каждый последующий прыжок делает в два раза короче предыдущего. Достигнет ли она болота и за сколько прыжков. Длину первого прыжка задайте самостоятельно.

Источник

5 987

Сборник примеров задач с решениями при использовании команды цикла For

Вывод на экран

Спросить имя пользователя и вывести его на экран 10 раз.

Спросить имя пользователя и вывести его на экран Р раз, указывая порядковый номер вывода.

Вывести на экран числа от -5 до 15 через пробел

Вывести на экран числа от 1 до А (A>1)

Вывести на экран числа от -A до А

Вывести на экран числа от А до В

Вывести на экран все цифры

Вывести на экран квадратный корень чисел от 1 до А. (A>1)

Вывести на экран квадраты чисел от А до В

Вывести на экран все 2-ух цифровые числа

Вывести на экран все отрицательные цифры

Вывести на экран все отрицательные 2-ух цифровые числа

Вывести на экран 2-ух цифровые числа от А до В по 4 в строке 1 способ (не всегда правильный)

Вывести на экран 2-ух цифровые числа от А до В по 4 в строке (2 способ)

Вывести на экран таблицу умножения на А

Вывод числовых последовательностей

Вывести на экран через пробел нечетные числа от 1 до 50

Вывести на экран четные числа от 2 до 60 по 5 в строке

Вывести на экран 2-ух цифровые числа кратные 5

Вывести на экран 2-ухцифровые числа кратные Н

Вывести на экран 2-ухцифровые числа кратные Н с промежутка (А..В)

Вывести на экран 2-ух цифровые числа у которых сумма цифр равна 9

Вывести на экран 2-ух цифровые числа у которых сумма цифр не равна 5

Вывести на экран 3-ох цифровые числа у которых сумма цифр равна произведению

Нахождение значения функции

Распечатать таблицу значений Y=x*x на промежутке от -10 до 10

Распечатать таблицу значений Y=3*x-5 на промежутке от -A до A

Распечатать таблицу значений Y=3*x-5 на промежутке от A до B

Функция Промежуток [-5;5]

Функция Промежуток [a;b]

Нахождение сумм числовых последовательностей

Найти суму чисел от 1 до 100

Найти суму парных двухцифровых чисел и вывести результаты промежуточных вычислений

Читайте также:  Середина цикла тянет низ живота и поясницу тошнит

Найти суму 2-ух цифровых чисел на промежутке от А до В

Найти суму непарных 3-oх цифровых чисел}

Найти суму чисел не кратных 3 на промежутке от 1 до А

Найти суму чисел кратных Н на промежутке от -А до А

Найти суму чисел не кратных Н на промежутке от А до В

Найти суму корней из чисел от 1 до Н

Найти суму кубов из чисел от A до B

Нахождение колличеств чисел

Найти количество парных двухцифровых чисел

Найти количество непарных 3-oх цифровых чисел

Найти количество цифр не кратных 3 от А до В

Найти количество чисел кратных Н на промежутке от -А до А

Найти количество чисел не кратных Н на промежутке от А до В

Нахождение произведения числовых последовательностей

Найти произведение чисел от 1 до 10

Найти произведение двухцифровых чисел кратных 20

Найти произведение 2-ух цифровых чисел на промежутке от А до В c выводом промежуточных вычислений

Найти произведение цифр не кратных 3

Найти произведение чисел кратных Н на промежутке от -А до А

Найти произведение чисел не кратных Н на промежутке от А до В c промежуточными вычислениями

Среднее арифметическое числовых последовательностей

Найти среднее арифметическое чисел от 1 до 100 c точностью 2 знака после запятой

Найти среднее арифметическое парных 2-ух цифровых чисел

Найти среднее арифметическое 2-ух цифровых чисел на промежутке от А до В (A>10, BB)

Найти среднее арифметическое трёхцифровых чисел кратных 100 с выводом промежуточных результатов

Найти среднее арифметическое цифр не кратных 3

Найти среднее арифметическое чисел не кратных Н на промежутке от -А до А

Найти среднее арифметическое чисел кратных Н на промежутке от А до В

Нахождение сумм и произведений значений функции

Найти суму значений функции на промежутке от А до В

Y=x*x

Функция

Функция

Найти произведение значений функции на промежутке от А до В

Y=x*x

Функция

Функция

Найти среднее арифметическое значений функции на промежутке от А до В

Y=x*x

Функция

Функция

Найти минимальное значение функции на промежутке от А до В

Y=x*x

Функция

Функция

Найти максимальное значение функции на промежутке от А до В

Y=x*x

Функция

Функция

Найти разницу между максимальным и минимальным значением функции на промежутке от А до В

Y=x*x

Функция

Функция

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Описание презентации по отдельным слайдам:

1 слайд

2 слайд

Описание слайда:

REPEAT <тело цикла> UNTIL <условие>; Цикл с пост условием WHILE <условие> DO begin <тело цикла> end; Цикл с пред условием for i:= 1 to n do Цикл с параметром Циклы в Паскале

3 слайд

Описание слайда:

Задача №1 program example; var sum:real; n:real; BEGIN sum:=0; n:=1; while n <= 30 do begin sum:=sum+n; n:=n+0.5; end; writeln(‘Сумма равна: ‘,sum); END. Ответ: Задача: вычислить сумму ряда 1+1.5+2+2.5+3+3.5+ .. + 30 Задача №2 Program Summa; Var S:real; N:integer; Begin S:=0;N:=0; repeat N:=n+1; S:=s+1/n Until n>1000; Writeln(s); Readln End. Ответ: Подсчета суммы первых 1000 членов гармонического ряда 1+1/2+1/3+1/4+…1/N

4 слайд

Описание слайда:

Задача №3 Var I, n,x,sum: integer; Begin Write(‘Введите N=’); Readln(n); Sum:=0; For I:=1 to n do Begin Write(‘Введите число’); Readln(x); if x<0 then sum:=sum+x end; writeln(‘сумма =’, sum); End. Ответ: Вводится последовательность из N целых чисел. Найти сумму всех отрицательных чисел.

5 слайд

Описание слайда:

Пример 1. Вычислить наибольший общий делитель двух натуральных чисел А и В. Воспользуемся для этого алгоритмом Евклида: будем уменьшать каждый раз большее из чисел на величину меньшего до тех пор, пока оба числа не станут равны. Program NOD; Var a,b:integer; Begin Write (‘введите два натуральных числа’) Readln(a,b) While a<>b do If a>b then a:=a-b else b:=b-a; Writeln(‘НОД=’,a); End.

6 слайд

Описание слайда:

Пример 2 . Начав тренировки, лыжник в первый день пробегал 10 км. Каждый следующий день он увеличивал длину пробега на 10% от предыдущего дня. Определить в какой день он пробежит больше 20 км, в какой день суммарный пробег за все дни превысит 100км. Program prim_10; Var S:real; N:integer; Begin S:=10;N:=1; While s<20 do Begin N:=n+1; S:=s*0.1 End; Writeln(‘ дневной пробег больше 20 км на ‘,n,’ день’); S:=10;N:=1; While s<100 do Begin N:=n+1; S:=s+s*0.1 {накапливаем суммарный пробег} End; Writeln(‘за ‘,n,’ пробежит больше 100 км’); End.

7 слайд

Описание слайда:

Вывести на экран ряд чисел Фибоначчи, состоящий из n элементов. Числа Фибоначчи – это элементы числовой последовательности 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, …, в которой каждое последующее число равно сумме двух предыдущих. Числа Фибоначчи program fib_01; var i, ch, ch1, ch2, n :integer; {i – счетчик чисел Фибоначчи;n – количество чисел Фибоначчи; ch – число Фибоначчи;ch1, ch2 – вспомогательные переменные алгоритма поиска чисел Фибоначчи} begin write(‘n=’); readln(n); ch:=0; {алгоритм поиска чисел Фибоначчи} ch1:=1; for i:=1 to n do begin ch2:=ch1; ch1:=ch; ch:=ch1+ch2; write (ch:5) {надо вывести на экран все числа Фибоначчи, поэтому оператор вывода находится внутри цикла} end; end.

8 слайд

Описание слайда:

Домашнее задание Дано натуральное число. Вывести на экран все натуральные числа до заданного включительно. 2. Вывести на экран кубы чисел от A до B.

9 слайд

Описание слайда:

№1 program FromOneToN; var i, n: word; begin readln(n); for i := 1 to n do begin write(i, ‘ ‘); end ; end. №2 var a, b: integer; begin write(‘A: ‘); readln(a); write(‘B: ‘); readln(b); if a < b then for a := a to b do writeln (a * a * a); end.

  • Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Пожаловаться на материал

Курс повышения квалификации

Курс профессиональной переподготовки

Учитель математики и информатики

Курс профессиональной переподготовки

Учитель информатики

Найдите материал к любому уроку,

указав свой предмет (категорию), класс, учебник и тему:

также Вы можете выбрать тип материала:

Общая информация

Учебник: «Информатика», Босова Л.Л., Босова А.Ю.

Тема: 3.5.4. Различные варианты программирования циклического алгоритма

Номер материала: ДБ-013608

Вам будут интересны эти курсы:

Оставьте свой комментарий

Источник