В целочисленную переменную let записываем значение, которое получится при вычитании из числа 2020 числа 1982.




ЭК по информатике-10А – 15 апреля

Читаем внимательно, всё, что выделено полужирным начертанием переносим в тетрадь (делаем конспект). Программы при наличии компьютера копируем и проверяем в среде.

Практическая работа №6: «Функции для работы с символьными строками. Преобразования «строка-число»

Символьная строка — это последовательность символов, расположенных в памяти рядом (в соседних ячейках).

Для работы с символами во многих языках программирования есть переменные специального типа: символы и символьные массивы. Казалось бы, массив — это и есть символьная строка, однако в школьном алгоритмическом языке и в Паскале для строк используются специальные типы данных.

Такой тип данных в школьном алгоритмическом языке называется литерным и обозначается лит (от слова «литерный» — буквенный), а в Паскале — строковым и обозначается string (в переводе с англ. — строка). Вот пример объявления строки:

лит s {в алгоритмическом}

var s: string; {в Pascal}


Для того чтобы записать в строку значение, используют оператор присваивания:

s:= 'Bacя пошёл гулять';

или оператор ввода с клавиатуры: readln(s);

Обратите внимание, что при вводе строк в Паскале нужно использовать оператор readln (англ, read, line — читать до конца строки) вместо read. (Запишите текст, выделенный полужирным начертанием)

Существуют стандартные функции, которые определяют длину строки (количество символов в ней). В школьном алгоритмическом языке такая функция называется длин, а в Паскале — length (в переводе с англ. — длина). В следующем примере в целочисленную переменную n записывается длина строки s:

n:=длин(s) {в алгоритмическом}

n:=length(s); {в Pascal}


Для того чтобы работать с отдельными символами строки, к ним нужно обращаться так же, как к элементам массива: в квадратных скобках записывают номер символа. Например, так можно изменить четвёртый символ строки на 'а':

s[4]:='a';

 

Приведём полную программу, которая вводит строку с клавиатуры, заменяет в ней все буквы 'а' на буквы 'б' и выводит полученную строку на экран

program zamenasimvola;

var s:string; i:integer;

Begin

writeln('Введите строку на русском языке');

readln(s);

for i:=1 to length(s)do

if s[i]='а' then s[i]:='б';

writeln(s);

End.

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

Процедура str преобразует число целого или вещественного типов в его строковое представление. Процедура имеет 2 параметра: str (x, st), где «x» - это число, которое мы хотим преобразовать, а st – его строковое представление. Также, можно указывать формат преобразования: str(x:A:B, st), где «A» задает ширину всего поля, которое выделяется для строкового представления числа, а «B» - количество символов в дробной части (последний параметр имеет значение в том случае, если преобразуется вещественное число). Процедура str делает с числом то же, что и оператор writeln перед тем как вывести число на экран (преобразует число в символ).
Процедура val преобразует строковое представление числа в само число, которое можно записать в целочисленную или вещественную переменную. Процедура имеет 3 параметра: val (st, x, r), где st – строка, которую необходимо преобразовать в число, x – вещественная или символьная переменная, в которую записывается это число, r – необязательный параметр, который, в случае ошибки будет содержать номер позиции, в которой обнаружен ошибочный символ.

Задача: даны два числа: 12345 и 678910. Вывести на экран сумму чисел и строку, составленную из суммы строк этих чисел: 12345678910

program string1;

var stroka,stroka1,stroka2:string;

x,y,z:integer;

Begin

x:=12345;

y:=678910;

z:=x+y;

writeln(z);

str(x,stroka1);

str(y,stroka2);

stroka:=stroka1+stroka2;

writeln(stroka);

End.

Задача: написать программу, в которой строковой переменной будет присвоено значение, определяющее дату, например, 19.12.1982. Пусть эта дата обозначает год вашего рождения. Программа, должна подсчитать, сколько вам лет на текущий момент. Текущим моментом будем считать 2020 год. (оформите программу со своими данными)

program string2;

var stroka1,stroka2:string;

god, let,r:integer;

Begin

stroka1:='19.12.1982';

stroka2:=copy(stroka1,7,4);

val(stroka2,god,r);

let:=2020-god;

writeln(let);

End.

Комментарии:

В переменную «stroka1» записываем дату рождения.

В переменную «stroka2» копируем из переменной «stroka1» последние 4 символа, начиная с 7-го.

Преобразовываем эти 4 символа в число и записываем это число в целочисленную переменную god, r-обязательная целочисленная переменная для того, чтобы преобразование работало без ошибок, упоминали выше.

В целочисленную переменную let записываем значение, которое получится при вычитании из числа 2020 числа 1982.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-06-29 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: