Turbo Pascal. Работа с массивами.

Авторские уроки Марины Макаровой

К уроку информатики

Тема. Работа с массивами.

Цель. Закрепить знания и умения работы с массивами, инструкциями повторения, ветвления, развивать логическое мышление.

 

План :

  • Проверка домашнего задания
  • Разминка
  • Пример решения задачи
  • Решение задач
  • Домашнее задание

 

Ход урока.

1. Организационный момент.

 

2. Проверка домашнего задания .

Дан массив натуральных чисел. Найти произведение всех четных элементов данного массива.

 

program proizv;

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

max, i: integer;

begin

for i:=1 to 6 do readln(a[i]);

p:=1;

i:=2;

while I<=6 do

begin

p:=p*a[i];

i:=i+1;

end;

writeln(p);

readln;

end.

 

3. Разминка

Даны : a: array [1..5] of integer, b: array [1..5] of integer, c: array [1..5] of integer. Какое значение будет иметь c [4] после выполнения следующих операций:

1) c [4]:=10 /10/

2) c[2]:=3;

c[4]:=c[2]*2; /6/

3) a[1]:= -10;

b[2]:=10;

c[4]:=a[1]+b[2]; /0/

4) c[4]:=3;

c[4]:=c[4]+1; /4/

5) a[4]:=100;

b[4]:=0;

c[4]:=a[4]/b[4] / ошибка /

6) for i:=1 to 5 do c[i]:=50; /50/

7) for i:=1 to 5 do c[i]:=50;

for i:=1 to 5 do c[i]:=c[i]-10; /40/

 

4. Пример решения задачи

Задача. Дан массив натуральных чисел из пяти элементов. Найти наибольший элемент.

Решение.

program maxim;

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

max,i:integer;

begin

for i:=1 to 5 do readln(a[i]);

max:=a[1];

for i:=2 to 5 do if a[i]>max then max:=a[i];

writeln('максимальный элемент: ', max);

readln;

end.

 

Данная программа сохранена на компьютерах, а так же учитель объясняет на доске или с использованием медиапроектора. Затем ученики загружают эту программу, прогоняют. Потом учитель задает следующие задания, при решении которых переделывается данная программа для экономии времени. Серым фоном выделены измененные строки.

 

5.Решение задач

Задание 1. Переделать данную программу так, чтобы определить минимальный элемент таблицы.

Задание 2. Добавить в данную программу инструкции, чтобы определить номер максимального (минимального) элемента таблицы.

program maxim;

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

max,i:integer;

n: integer;

begin

for i:=1 to 5 do readln(a[i]);

max:=a[1];

n:=1;

for i:=2 to 5 do

if a[i]>max then

begin

max:=a[i];

n:=i;

end;

writeln('максимальный элемент: ', max);

writeln ('номер максимального элемента: ', n );

readln;

end.

 

Задание 3. Переделать данную программу так, чтобы определить существует ли в данной таблице отрицательное число (двухзначное число, число 0, и т. д.).

 

program maxim;

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

max,i:integer;

n: string[3];

begin

for i:=1 to 5 do readln(a[i]);

n:= ' нет ';

for i:= 1 to 5 do if a[i] <0 then n:=' да ' ;

writeln( n);

readln;

end.

 

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

 

program maxim;

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

max,i:integer;

n: integer;

begin

for i:=1 to 5 do readln(a[i]);

n:=0 ;

for i:=1 to 5 do if a[i]<0 then n:=n+1;

writeln( n);

readln;

end.

 

Задание 5. Переделать данную программу так, чтобы найти сумму всех отрицательных чисел в данной таблице (двухзначных чисел).

 

program maxim;

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

max,i:integer;

n: integer;

begin

for i:=1 to 5 do readln(a[i]);

n:=0;

for i:=1 to 5 do if a[i]<0 then n:=n+ a[i];

writeln( n);

readln;

end.

6. Домашнее задание:

Одну любую из этих программ переписать с использованием инструкции « while » или « repeat - until ».

(Автор неизвестен)

 

Авторские уроки Марины Макаровой

К уроку информатики


Кто бы что бы не говорил о вреде шпаргалок, но опыт многих поколений преподавателей говорит о том, что без этого атрибута не выучился ни один студент и ни один школьник. Грамотно составленные www.shpora.su, истории и другим предметам переходят из поколения в поколение. Информационные технологии сдели этот процесс уже совершенно необратимым.

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





Добавить в закладки

Поиск на сайте





Яндекс.Метрика