Смекни!
smekni.com

Строковые переменные (стр. 3 из 4)

I. Провести инструктаж по ТБ.

II. Проверка домашнего задания: вызвать одного ученика к доске, остальные отвечают на вопросы учителя.

1. Для чего предназначена функция copy ?

2. Чему равен результат выполнения команды присваивания

a := copy (‘информатика’, 3, 5):

b := copy (‘информатика’, 10, 2) + copy (‘информатика’, 5, 1) +

+ copy (‘информатика’, 8, 1) + copy (‘информатика’, 7,1);

c := copy (‘информатика’, 8, 2) + с opy (‘информатика’, 2, 1)+ copy (‘информатика’, 7, 1)?

Физкультминутка.

III. Задания для самостоятельной работы.

1. Составить программу получения из слова « лекарство» слова:

А) крот, товар, тоска.

Б) стрела, треск, совет.

В) отвар, сквер, сектор.

Г) село, сетка, сова.

2. Из слова « муха» получить « слон».

IV. Домашнее задание: повторить функцию copy .

Урок 5.

Вид урока: лекция.

Тема: Процедуры для работы со строковыми переменными.

Цель: • научить использовать процедуру для преобразования слов;

• развитие алгоритмического мышления;

• воспитание сознательной дисциплины учащихся на уроке.

План.

1. Орг.момент.

2. Проверочная работа по теме «Функция copy ».

3. Объяснение нового материала.

4. Закрепление.

5. Домашнее задание.

Ход урока.

I. Раздать тетради для проверочных работ.

II. Раздать раздаточный материал. Объяснить задание.

III. 1. Удаление подстроки.

Процедура delete (a, i, n ) удаляет n символов из строки a, начиная с позиции i.

2. Вставка подстроки.

Процедура insert (b, a, i )вставляет подстроку b в строку a, начиная с позиции i.

Пример 1.

program primer1;

var a, b, c, d : string;

begin

a:= ‘ лекарство ’;

delete (a, 3, 5);

writeln (a); { лево }

delete (a, 3, 1);

b:= ‘ т ’;

insert (b, a, 3);

writeln (a); { лето }

c:= ‘ кот ’;

d:= ‘ мпо ’;

insert (d, c, 3);

writeln ( c ); {компот}

end .

3. Поиск подстроки.

При составлении программ возникает потребность поиска конкретной строки в тексте.

В Turbo Pascal для поиска подстроки служит функция pos(b, a ) которая отыскивает в строке aпервое вхождение строки bи возвращает номер позиции, с которой начинается строка b; если подстрока не найдена, возвращается ноль.

(рассмотреть пример)

Пример 2

program primer ;

var a, b, c: string;

m , n : integer ;

begin

a := ‘Жил-был в норе под землей хоббит’;

b:= ‘ был ’;

c:= ‘ хоббит ’;

m:=pos(b, a);

n:=pos(c, a);

writeln (b, ‘ – ‘,m); { был - 5}

writeln (c, ‘ - ‘, n); { хоббит - 27}

end.

4. Определение длины строки.

При решении некоторых задач со строковыми величинами требуется определить длину строки – количество символов в строке, включая пробелы.

Для этого служит функция length(a).

Физкультминутка.

IV. Пример 3.

Выполнить преобразование слов: форма – корма – корка – кофта.

program primer2;

var a, b, c, d: string;

begin

a:= ’ форма ’;

write (a); { форма }

b:= “ к ”;

delete (a, 1, 1);

insert (b, a, 1);

write (a, ‘ ‘); { корма }

delete (a, 4, 1);

insert (b, a, 4);

write (a, ‘ ‘); { корка }

delete (a, 3, 2);

c:= ‘ фт ’;

insert (c, a, 3);

write (a); { кофта }

end.

Пример 4

В заданной строке А заменить выделенную подстроку на подстроку В. Для поиска позиции, с которой надо произвести замену, воспользоваться функцией поиска подстроки.

А:=’Выдать премию в размере месячного оклада’

В := ‘ годового ’

program primer;

var a, b, c: string;

m : integer ;

begin

a := ‘Выдать премию в размере месячного оклада’;

b := ‘годового’;

c :=’месячного’;

m := pos ( c , a );

delete(a, m, 9);

insert(b, a, m);

writeln ( a )

end .

V. Домашнее задание: выполнить преобразование слов: оратор – оракул – караул – каркас.

Урок 6.

Вид урока: практическая работа.

Тема: «Процедуры для работы со строковыми переменными».

Цель: • совершенствование ЗУН учащихся;

• развитие мышления, внимания;

• воспитание бережного обращения с компьютерной техникой.

План.

1. Орг.момент.

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

3. Самостоятельная работа за компьютером.

4. Итог, домашнее задание.

Ход урока.

I. Провести инструктаж по ТБ.

II. Для проверки домашнего задания вызвать одного ученика к доске.

(выполнить преобразование слов оратор – оракул – караул - каркас)

Физкультминутка.

III. Задания для самостоятельной работы.

1. Выполнить преобразования слов:

А) груша – гроза – проза – проба – сдоба – свара

Б) бисер – бомба – балка – палка – палец

В) метка – сетка – седло – сопло – совет – кювет

Г) нитка – нерка – корка – кирка – книга – пурга

2. В заданной строке А заменить выделенную подстроку на подстроку В. Для поиска позиции, с которой надо произвести замену, воспользоваться функцией поиска подстроки.

А В
1 Продлить каникулы до 1 марта. февраля
2 Принтер – устройство ввода. вывода
3 В одном байте содержится 10 бит. 8
4 Диаметр гибкого диска равен 3,5 сантиметрам. дюймам

IV. Домашнее задание: повторить функции и процедуры.

Урок 7

Вид урока: лекция.

Тема: «Преобразование строк».

Цель: • научить преобразовывать строки;

• развивать алгоритмическое мышление;

• прививать интерес к предмету.

План.

1. Орг.момент.

2. Письменный опрос.

3. Объяснение нового материала.

4. Закрепление.

5. Домашнее задание.

Ход урока.

I. Раздать тетради для проверочных работ.

II. Задания проверочной работы.

1 вариант 2 вариант

1. Функция length . 1. Функция pos .

2. Процедура insert . 2. Процедура delete .

3. В строке А заменить выделенную подстроку на строку В.

А В
1 Процессор служит для хранения данных. обработки
2 Клавиатура – устройство вывода. ввода

III. При решении целого ряда задач возникает необходимость преобразовать строку, представляющую собой последовательность цифр в число и наоборот.

Для этих целей служат следующие процедуры:

1. str (x, a) – процедура, преобразующая число х в строку символов а.

Например, х:=453

str ( x , a ) { a =’453’}

2. val (a, x, k) – процедура, преобразующая строку а, состоящую из цифр, в соответствующее число х.

К – переменная типа integer , которой присваивается 0, если преобразование прошло успешно. В противном случае k будет содержать номер позиции в строке а, где обнаружен ошибочный символ.

Физкультминутка.

IV. 1. Составить программу нахождения суммы цифр числа.

(целесообразно вспомнить, как решить задачу с использованием mod и div )

program summa;

var n, a: string;

i, k, s: integer;

begin

s:=0;

write (‘ введите число ’);

readln (n);

for i:=1 to length (n) do

begin

a:= copy (n, i, 1);

val (a, x, k);

s:= s + x:

end;

write (‘s=’, s)

end.

2. Написать программу определения количества четных цифр в числе.

program kolvo;

var n, a: string;

i, k, k1: integer;

begin

k1:=0;

write (‘ введите число ’);

readln (n);

for i:=1 to length (n) do

begin

a:= copy (n, i, 1);

val (a, x, k);

if x mod 2 = 0 then k1:= k1 + 1:

end;

write (‘ четных цифр ’, k1)

end .

V. Домашнее задание: написать программу, заменяющую все буквы А на О.

Урок 8.

Вид урока: практическая работа.

Тема: «Преобразование строк».

Цель: • совершенствование ЗУН учащихся;

• развитие алгоритмического мышления;

• воспитание бережного обращения с компьютерной техникой.

План.

1. Орг.момент.

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

3. Самостоятельная работа за компьютером.

4. Итог, домашнее задание.

Ход урока.

I. Провести инструктаж по ТБ.

II. Вызвать одного ученика к доске. Задание: заменить все буквы А на О.

program zamena;

var n, a, b: string;

i: integer;

begin

write (‘ введите текст ’);

readln (n);

b:=’O’;

for i:=1 to length(n) do

begin

a:= copy (n, i, 1);

if (a=’a’) or (a=’A’) then begin delete (n, i, 1 ); insert (b, n, i); end;

end;

write (n)

end.

Физкультминутка.

III. Задания для самостоятельной работы .

1) В данном тексте определить каких букв больше О или А.

2) Определить, есть ли заданная буква в тексте.

3) Посчитать количество букв Р и Н в тексте.

4) Дано слово. Верно ли, что оно начинается и заканчивается на одну и ту же букву.

5) Дано предложение. Напечатать все его буквы «и».

6) Дано предложение. Определить долю (в %) букв «а» в нем.

IV. Домашнее задание: Дано предложение. Составить программу, которая выводит столбиком его третий, шестой, девятый и т.д. символы.

Урок 9

Вид урока: урок решения типовых задач.

Тема: «Решение задач».

Цель: • закрепить навыки работы с процедурами и функциями;

• развивать алгоритмическое мышление;

• воспитывать уважение к сопернику, находчивость, умение работать в коллективе.

План.

1. Орг.момент.

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

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

4. Домашнее задание.

Ход урока.

II. Для проверки домашнего задания вызвать одного ученика к доске.

program primer;

var a, b:string;

i: integer;

begin

write (‘ введите предложение ’);

readln (a);

for i:=1 to length(a) do

if i mod 3 =0 then begin b:=copy (a, i, 1); writeln (b) end;

end .

III. Разделить класс на три группы. Каждой группе дать задание. Ребята составляют программу, а затем один представитель от команды объясняет решение задачи у доски.