Методическая разработка: Программирование на Turbo Pascal
методическая разработка по информатике и икт (11 класс) на тему

Методическая разработка 
 
«Программирование на Turbo Pascal»
 
 
Учитель: Буцкина Лариса Васильевна 
Оператор 
цикла с параметром
 
for i:=A to B do
-------------------;
 
 
for I:=A downto B do
-------------------------;
 
 
Начальные и конечные значения могут быть представлены:
Константами
Переменными
Арифметическими выражениями
 
 
 
 
Этот оператор применяется тогда, если известно заранее число повторений операторов.
 
 
Если тело цикла состоит из нескольких операторов, то они заключаются в операторные скобки   begin----end. 
 
 

Скачать:

ВложениеРазмер
Microsoft Office document icon operator_tsikla_s_parametrom2.doc75 КБ

Предварительный просмотр:

Методическая разработка

«Программирование на Turbo Pascal»

Учитель: Буцкина Лариса Васильевна


Оператор

цикла с параметром

for i:=A to B do

-------------------;

for I:=A downto B do

-------------------------;

        Начальные и конечные значения могут быть представлены:

  • Константами
  • Переменными
  • Арифметическими выражениями

        Этот оператор применяется тогда, если известно заранее число повторений операторов.

        Если тело цикла состоит из нескольких операторов, то они заключаются в операторные скобки   begin----end.

НАПРИМЕР:

Program pr_2;

Uses crt;

Var i,n:integer;

Begin

Clrscr;

for I:=235 to 1000 do

n:=n+i;

      Writeln(‘n=’,n);

      Readln;

End.


МАССИВЫ

I. Объявление массива.

  1. Одномерный массив.

        Const n=10;

        Var a: array [1..n] of integer;

  1. Двухмерный массив.

        Const n=10; m=10;

        Var a: array [1..n, 1..m] of integer;

II. Ввод массива.

 

        For i:=1 to n do

        Readln (a[i]);        

III. Вывод информации.

            в цикле

Writeln (‘       ‘)

            за циклом

IV. Основные формулы.

        A[i] – элементы массива

        S:=S+A[i];

        S:=S+A[i]*A[i]

        S:= S+i

        P:=P*A[i]

        P:= P*i

        K:=K+1

        IF A[i] = 5 TO A[i]:=2

        IF X MOD  2 = 0 THEN  

V. Простейшие задачи.

1. S - ?   S кв. эл. - ?   S ср. ар. - ?  P-?

        2. подсчитать количество

3. замена элементов

4. распечатка массивов

ПРИМЕР – 1

program pr_1;

const n = 10;

var a: array [1..n] of integer;

   i,s : integer;

begin

writeln('Введите эл. массива');

for i:=1 to n do

readln(a[i]);

for i:=1 to n do

s:=s+a[i];

writeln('s=',s);

readln;

end.

ПРИМЕР – 2 

Вычислить среднее арифметическое элементов массива.  

S:=S+a[i] – рабочая строка

За рабочим циклом

S:=S/n

ПРИМЕР – 3

Вычислить сумму квадрата элементов массива. 

S:=S+a[i] * a[i] – рабочая строка

ПРИМЕР – 4

Вычислить произведение  элементов массива.  

 P:=1 – до рабочего цикла

P:=P * a[i] – рабочая строка

ПРИМЕР – 5

Вычислить   n!   (факториал) 

Нет цикла ввода.

P:=1 – до рабочего цикла

P:=P * i – рабочая строка

ПРИМЕР – 6

Вычислить сумму натуральных чисел

Нет цикла ввода.

S:=S+i – рабочая строка

ПРИМЕР – 7

        Замена

If  a[i]=5  then  a[i]:=2  –   рабочая строка

For  i:=1  to  n  do

Writeln (a[i]);    –    вывод информации в цикле

ПРИМЕР – 8

program pr_1;

const n = 10;

var a: array [1..n] of integer;

                 i,k : integer;

begin

 writeln('Введите эл. массива');

  for i:=1 to n do

     readln(a[i]);

  for i:=1 to n do

     if a[I] = 2  then k:=k+1;

 writeln('k=' ,k);

 readln;

end.


ПРИМЕР – 9

Распечатка  массивов

program PR1;

var i,j:byte;

    a:  array[0..9, 0..9]of integer;

    ch:char;

begin

for i:=1 to 9 do

for j:=1 to 9 do

a[i,j]:=i*j;

for i:=1 to 9 do

begin

                  for j:=1 to 9 do

          begin write(a[i,j]:4); end;

writeln(' ');

end;

readln(ch);        

end.

Прерывание   работы   оператора      FOR…..NEXT.

Например:

For n=10 downto 5 do

Begin

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

Readln(m);

If m=0 then exit for;

Writeln( m,’*’, n,’=’, m*n);

End;

Вопросы  для  повторения

ком.  повт.  с  параметром.

  1. Как записывается оператор?
  2. Как он выполняется?
  3. Тело цикла должно содержать 2 оператора. Какие из приведенных операторов правильные, какие нет и почему?
  • For I:=12 to 15 do s:=s+I;
  • For a:=30 to 20 do

        If a mod 3 =0 to d:=d+1;

  •  For x:=1 to 20 do s:=s+I

       

If (x mod 2=0) or (x mod 3=0)

       Then d:=d+1



Задача: Даны три числа Х1, Х2, Х3.

Написать программу определения наибольшего (наим.) из них.

Program   min;

Var a: array [1..3] of integer;  i,max:integer;

Begin

For i: =1 to 3 do

Readln (a[i]);

Max: =a [1];

For i: =1 to 3 do

if max

Writeln (‘max=’, max);

Readln;

End. 

Задача: Вычислить сумму всех натур. чисел от 5 до12.

Program   summa;

Var i, s: integer;

Begin

For i: =5 to 12 do

S: =S + i;

Writeln (‘S=’,S);

Readln;

End. 


Задача:      Вычислить n!;

Program   wychislenie;

Var    I, f, n: integer;

Begin

F: =1;

Readln (n);

For I: =1 to n do

F: = f*I;

Writeln (n,’!=’, f );

Readln;

End. 

Задача:   В массиве из 5 вещественных чисел расположить элементы в обратном порядке (на место 1-5,на 5-1, и т.д.).

Program poryadok;

Const n=10;

Var a: array [1..n] of real;  I:integer;

Begin

Writeln (‘Введите эл. массива’);

For I: =1 to n do

Readln (a [I]);

For I: =n downto 1 do

Writeln (a [I]:3);

Readln;

End. 


Задача:  Поиск максимального элемента из 7.  Запомнить его номер.

Program  max;

Var a: array [1..10] of integer; I,n,max:integer;

Begin

Writeln (‘Введите эл. массива’);

For I: =1 to 10 do

Readln (a [I]);

Max: =a [I]; n: =1;

For I:=1 to 10 do

If max<=a [I] then

Begin max: =a [I]; n: =I end;

Writeln (max, n);

Readln;

End.

 

Задача: Дана прямоугольная таблица  А, состоящая из 2 строк и 5 столбцов. Вычислить суммы элементов каждой из строк.

Program   summa_strok;

Var  a:array[1..2,1..5] of integer;  I,j:byte; S[I]:integer;

Begin

Writeln (‘Введите эл. массива’);

For I: =1 to 2 do

Begin

For j:=1 to5 do

Begin

Readln (a [I, j]);

S [I]:=s [I] +a [I, j]

End;

Writeln (‘ s [I]=’,s[I]);

End;

Readln;

End. 

Задача: Написать программу для вычисления суммы квадратов элементов стоящих на диагонали массива А [3,3].

Program   summa_kw;

Var a: array [1..3, 1..3] of integer;  I,j:byte; S: integer;

Begin

Writeln (‘Введите эл. массива’);

For I: =1 to 3 do

Begin

For j: =1 to3 do

Begin

Readln (a [I, j]);

End;

End;

For I:=1 to 3 do

Begin

For j:=1 to3 do

Begin

If I=j then

S: =s + a [I, j]*a [I, j]

End;

End;

Writeln (‘s=’, s);

Readln;

End. 


Задача: Преобразовать прямоугольную таблицу из 2 строк и 4 столбцов в одномерный массив.

Program   preobr_ massiw;

Var a: array [1..2, 1..4] of integer;  I,j:byte;

B: array [1..8] of integer; n: integer;

Begin

Writeln (‘Введите эл. массива’);

For I: =1 to 2 do

Begin

For j: =1 to 4 do

Begin

Readln (a [I, j])

End;

End;

For I: =1 to 2 do

Begin

For j: =1 to 4 do

Begin

N: =n+1 B (n):=a [I,j]

End;

End;

For n: =1 to 8 do

Writeln (b[n]);

Readln;

End. 


Задача:  Поменять местами в массиве столбцы и строчки.

Program   zamena;

Var   a: array [1..4, 1..4] of integer;  I, j: byte;

Begin

Writeln (‘Введите эл. массива’);

For I: =1 to 4 do

For j: =1 to 4 do

Readln ( a[I, j];)

For I: =1 to 4 do

Begin

For j: =1 to 4 do

Begin

Writeln (a [I, j])

End;

Writeln (‘   ‘)

End;

Readln;

End.

Задача:   Найти все двузначные числа, которые делятся на п.

Program

Var a: array [10 .. 99] of integer; n :integer;

Begin

Read (n);

For I: =10 to 99 do

If a [I] mod n=0 then

Writeln (a[I]);

Readln;

End.

(см. тетрадь Qbasic)


Задача:     Подсчитать сумму столбцов.

Program   summa_ stolb;

Var a: array [1.. 4, 1..3] of integer;  I, j: byte;

B: array [1.. 3] of integer; n: integer;

Begin

Writeln (‘Введите эл. массива’);

For I: =1 to 4 do

For j: =1 to 3 do

Readln (a [I, j]);

For I: =1 to 4 do

For j: =1 to 3 do

S[j]:= s[j] +a [I, j];

For j: =1 to 3 do

Writeln (s[j]);

Readln;

End. 


Задача:  Подсчитать число ошибок в устном счете.

Program   test;

Var a: array [1..5] of integer;

N, p1, p, x, y: integer;

Begin

Writeln (‘Введите 2 числа х и y’);

For I: =1 to 5 do

Begin

Read (x, y); P: =x*y; Readln (p1);

If p=p1 then

Writeln (‘Верно’)

Else

Begin writeln (‘Неверно’); n: =n+1 end;

end;

writeln (‘кол-во ошибок=’, n);

end.


По теме: методические разработки, презентации и конспекты

Конспект урока с презентацией "Графика на языке программирования Turbo Pascal"

Урок для учащихся 11 класса по теме "Графика на языке программирования ТР". Содержит теоретический материал, практическую работу и презентацию к уроку. Надеюсь, многим учителям информатики пригодится!...

Методическая разработка “Графика в Turbo Pascal”

В данной работе методическое изложение построено ‘от простого  к сложному’. Сначала рассматриваются графические возможности языка программирования Turbo Pascal на примере простейших програм...

Программа для детского объединения "Программирование на Turbo Pascal"

Данная программа направлена на специализацию детей в области новых информационных технологий, выражающуюся в изучении программирования на языке Turbo Pascal. Это способствует созданию дополнительных у...

План-конспект урока информатики на тему: "Программирование на Turbo Pascal. Массивы»"

План-конспект урока информатики на тему: "Программирование на Turbo Pascal. Массивы"...

Turbo Pascal (ту́рбо паска́ль) — среда разработки для языка программирования Паскаль.

Турбо Паскаль - это язык высокого уровня (сокращенно ЯВУ) программирования общего назначения. Язык получил своё имя в честь великого французского математика и философаБлеза Паскаль, автора первых...

Методическая разработка "Программирование списков в HTML"

Методическая разработка "Программирование списков в HTML"  10 класс...

Методическая разработка по теме «Turbo Pascal»

Методическая разработка конспектов уроков предназначена для изучения темы «Turbo Pascal» в старших классах общеобразовательной школы....