Язык программирования Pascal. Повторение
- Рубрика: Презентации / Презентации по Информатике
- Просмотров: 328
Презентация "Язык программирования Pascal. Повторение" онлайн бесплатно на сайте электронных школьных учебников edulib.ru
Оператор цикла for Оператор цикла for имеет одну из двух форм: СИНТАКСИС: 1 форма. for переменная := начальное значение to конечное значение do оператор (начальное значение < конечное значение) 2 форма. for переменная := начальное значение downto конечное значение do оператор (начальное значение > конечное значение) Заголовок цикла - текст от слова for до слова do включительно, Тело цикла - оператор после слова do, в том числе составной оператор (begin…end). Параметр цикла - переменная после слова for. СЕМАНТИКА: Для 1 формы цикла со словом to параметр цикла, увеличивается всякий раз на единицу. Для 2 формы со словом downto - параметр цикла уменьшается на единицу. Примеры: for k=3 to 7 do write (k,k*k,’ПРИВЕТ’); for n=9 downto 4 do write (n,2*n,’ответ’);
Оператор цикла for СЕМАНТИКА 1 форма: for переменная := начальное значение to конечное значение do оператор Шаг 1. При входе в цикл присваивается . Шаг 2. Проверяется условие переменная
Оператор цикла FOR 1. For1. Даны целые числа K и N (N > 0). Вывести N раз число K. Дано: K и N – целые Найти: Write (‘k=‘,k) N-раз program NK; var N,K,I:integer; begin write ('введите целое N='); readln (N); write ('введите целое K='); readln (K); for I:=1 to N do writeln ('K=',K,' I=',I); end.
Оператор цикла FOR Напечатать свое имя, столько раз сколько тебе лет. Дано: name – имя (текст) V – возраст (целое) Найти: write (name) V - раз program NK; var v,I:integer; name:string; begin write ('введите своё имя Name='); readln (Name); write ('введите свой возраст в годах V='); readln (V); for I:=1 to V do writeln('Name=',Name,' I=',I); end.
Оператор цикла FOR Задание 3. For4. Дано вещественное число — цена 1 кг конфет. Вывести стоимость 1, 2, …, 10 кг конфет. program konf; var i :integer; C:real; begin writeln ('введите цену 1 кг конфет = '); read (C); for i:=1 to 10 do writeln (i, ' кг конфет стоят',i*c:8:2,' рублей'); end.
Оператор цикла FOR Задание 4. Задать произвольное слово. Напечатать на экране слово N раз лесенкой (со сдвигом вправо). Вася Вася Вася program NK; var N,i,k:integer; sl:string; begin write ('введите слово'); readln (sl); write ('введите N>0-целое'); readln (n); for i:=1 to N do begin write('I=',I); for k:=1 to i do write (' '); writeln(sl); end; end.
Оператор цикла FOR For20°. Дано целое число N (> 0). Используя один цикл, найти сумму 1! + 2! + 3! + … + N! (выражение N! — N–факториал — обозначает произведение всех целых чисел от 1 до N: N! = 1·2·…·N). Чтобы избежать целочисленного переполнения, проводить вычисления с помощью вещественных переменных и вывести результат как вещественное число. program NK; var S,F:real; N,I:integer; begin write ('введите целое N='); readln (N); S:=0; F:=1; for I:=1 to N do begin F:=F*I; S:=S+F; end; writeln('S=',S); end.
Задание на самоподготовку 1. For14. Дано целое число N (> 0). Найти квадрат данного числа, используя для его вычисления следующую формулу: N2 = 1 + 3 + 5 + … + (2·N − 1). После добавления к сумме каждого слагаемого выводить текущее значение суммы (в результате будут выведены квадраты всех целых чисел от 1 до N). 2. For40. Даны целые числа A и B (A 0). Используя один цикл, найти сумму 1 + 1/(1!) + 1/(2!) + 1/(3!) + … + 1/(N!) (выражение N! — N–факториал — обозначает произведение всех целых чисел от 1 до N: N! = 1·2·…·N). Полученное число является приближенным значением константы e = exp(1).
Оператор цикла while ( цикл с предусловием ) СИНТАКСИС: while do ; - выражение логического типа. после do называется телом цикла. может быть составным (begin…end) СЕМАНТИКА: 1. Вычисляется , 2. Если истинно (TRUE), выполняется тело цикла, в противном случае (FALSE) происходит выход из цикла. Если всегда истинно, будет зацикливание, например: while 2>1 do write(1); Прервать зацикливание - клавиш или кнопку«stop» . Тело цикла while в Pascal ABC не может быть пустым.
Оператор цикла while Распечатать квадраты чисел, находящихся в диапазоне от 0 до 1 с шагом 0,2 Дано: XH=0 XK=1 dX=0,2 Найти X2 var k,s:real; begin s := 0; while s
Оператор цикла while Составьте таблицу значений функции y = 5x2 – 2x + 1 на отрезке [-5; 5] с шагом x = 2. Дано: XH= - 5 XK= 5 dX= 2 Найти: y = 5x2 – 2x + 1 var y,x:real; begin x := -5; while x
Задание на оператор while Даны целые положительные числа N и K. Используя только операции сложения и вычитания, найти частное от деления нацело N на K, а также остаток от этого деления. Дано целое число N (> 1). Найти наибольшее целое число K, при котором выполняется неравенство 2K 0). Используя операции деления нацело и взятия остатка от деления, вывести все его цифры, начиная с самой правой (разряда единиц). Начальный вклад в банке равен 1000 руб. Через каждый месяц размер вклада увеличивается на P процентов от имеющейся суммы (P — вещественное число, 0
Задание на оператор while Даны целые положительные числа N и K. Используя только операции сложения и вычитания, найти частное от деления нацело N на K, а также остаток от этого деления. Дано: N и K – целые положительные Найти: N div K, N mod K Пусть N=13 K=4 13 – 4 = 9 (9>=4, продолжать) 9 – 4 = 5 (5>=4, продолжать) 5 – 4 = 1 (1=K do begin N1:=N1-K; S:=S+1; end; writeln (N,' div ',K,' = ',S); writeln (N,' mod ',K,' = ',N1); end.
Задание на оператор while Дано целое число N (> 1). Найти наибольшее целое число K, при котором выполняется неравенство 2K
Задание на оператор while Дано целое число N (> 0). Используя операции деления нацело и взятия остатка от деления, вывести все его цифры, начиная с самой правой (разряда единиц). program cifra; var N,sifra,ost: integer; begin writeln ('введите N - целое'); readln (N); ost:=N; while ost0 do begin sifra:=ost mod 10; write (' ',sifra); ost:=(ost-sifra) div 10; end; end.
Задание на оператор while Начальный вклад в банке равен 1000 руб. Через каждый месяц размер вклада увеличивается на P процентов от имеющейся суммы (P — вещественное число, 0
Оператор цикла repeat Оператор цикла repeat имеет следующую форму: СИНТАКСИС: repeat until СЕМАНТИКА: 1. вычисляется после очередной итерации цикла, 2. Если истинно (TRUE), то происходит выход из цикла. Тело цикла оператора repeat, выполняется по крайней мере один раз. Оператор repeat используют, когда нельзя проверить, не выполнив тело цикла. Например: проверка данных при вводе repeat read(x); until x=0; Если условие всегда ложно (FALSE) происходит зацикливание: repeat write(1); until 2=1;
Задание на самоподготовку Задание 1. Определить число n, при котором сумма квадратов натурального ряда чисел от 1 до n не превысит величину K. Задание 2. Напечатать таблицу функций sin x и cos x на отрезке [0,1] с шагом 0.1 в следующем виде: x sin(x) cos(x) --------------------------------- 0.0000 0.0000 1.0000 0.1000 0.0998 0.9950 Задание 3. Вычислить значения функции f(x)= x3 – 3x на интервале [-2,2] с шагом x=0,2.
Задание на оператор repeat Задание 1. Определить число n, при котором сумма квадратов натурального ряда чисел от 1 до n не превысит величину K. program sum_sqr; var k, s, n : integer; begin writeln( 'Введите K' ); readln (k); s:=0; n:=0; repeat n := n+1; s:=s+n*n; until s > k; s:= s-n*n; n:=n-1; writeln('N= ', n, ‘ s=' ,s ); end.
Задание на самоподготовку Задание 2. Напечатать таблицу функций sin x и cos x на отрезке [0,1] с шагом 0.1 в следующем виде: x sin(x) cos(x) --------------------------------- 0.0000 0.0000 1.0000 0.1000 0.0998 0.9950 Program Table; Const xn=0; xk=1; dx=0.1; Var x: Real; Begin x:=xn; Writeln(' x sin(x) сos(x)'); Writeln('----------------------------'); While x
Задание на самоподготовку Задание 3. Вычислить значения функции f(x)= x3 – 3x на интервале [-2,2] с шагом x=0,2. Program Table; Const xn=-2; xk=2; dx=0.2; Var x, fx : Real; Begin x:=xn; Writeln(' x f(x)'); Writeln('----------------'); x:=xn; repeat fx:=x*x*x-3*x; Writeln(x:8:4,fx:8:4); x := x+dx; until x > xk; end.