Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Задания для самостоятельного выполнения лабораторной работы 10.




1 Вычислите сумму ряда S = 1 + 1/х + 1/2х + 1/Зх + ... 1/nх,  для n введённого с клавиатуры.

 

2 Определите значения функции у=0,4х2-1/х  для х изменяющегося от 2 до 10 с шагом 0,5.

 

3 Bычислить значение n! для n введённого с клавиатуры.

 

4 Bычислить сумму ряда Y=l!+2!+3! + ... n!, для n введённого с клавиатуры.

 

5 Вычислить А(А+1)(А+2)...(A+N), для А и N введённых с клавиатуры.

 

Лабораторная работа 11.

Символьные переменные Тип данных "CHAR"

 

Переменные, предназначенные для хранения одиночных символов, на­зываются символьными переменными. В языке Turbo Pascal для них опреде­лён тип данных CHAR. В переменную этого типа может быть помещён любой из 256 символов расширенного кода ASCII.

Таблица расширенного кода ASCII.

 

 

 

Объявление символьных переменных осуществляется в разделе объяв­ления переменных с помощью служебного слова CHAR.

 

Этот тип данных обладает некоторыми особенностями. Обычно значе­ния для переменных типа "CHAR" задаются в апострофах. Например, если в программе есть описания

 

u, v: char то возможны операторы присваивания u:=’a’; v:=u;  и т.д.

 

Штрих ‘’ - принятая в Паскале форма кавычки - употребляется всякий раз, когда значение типа "CHAR" явно указывается в программе. Выполне­ние операторов

 

u:=’b’; write(u);

 

приводит к высвечиванию на экране символа b.

Кроме того, имеется возможность задавать значения указанием не­посредственно числового значения ASCII-кода. В этом случае Вы должны перед числом, обозначающим код символа ASCII, поставить знак "#"

 

u:=#97

 

П р и м е р 1. Дана последовательность символов, заканчивающаяся символом "/". Необходимо подсчитать количество восклицательных знаков в данной последовательности.

 

 

Program ех_1;

var

с: char; { организация символьной переменной }

n: integer; { переменная для хранения количества "!" }

 

begin

read(с); { чтение первого символа с клавиатуры }

n:=0; { обнуление счётчика "!" }

 

while с=’/’ do { условие окончания работы вводом символа }

begin

if c=’!’  then n:=n+l; { подсчёт символов "!" }
read(c); { чтение следующего символа }

end;

 

end.

 

Обратите внимание. В таблице ASCII большие латинские буквы и ма­лые латинские буквы расположены подряд по алфавиту. Такая упорядочен­ность открывает возможность использования в программах операторов цик­ла с параметром, имеющим тип "CHAR". Параметр цикла пробегает последо­вательность символов в указанных границах. Вьполнение оператора цикла

 

for c:=’a’ to ‘z’ do write(c)

 

где с символьная переменная, приводит к высвечиванию на экране после­довательности всех малых букв латинского алфавита:

 

abcdefghhijklrrjiopqrstuvwxyz

 

Выполнение оператора цикла

for c:= ‘z’   downto ’a’ do write (c)

 

приведёт к выводу этих же букв в обратном порядке.

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

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

program ех_2;

label 1;

var с: real;

begin

 

1: write(‘x=’); read(с) ;

writeln(‘ ,f(x)= ‘ , sin(sqrt(x)));

goto 1;

 

end.

 

Когда эта программа выполняется, на экране формируется последователь­ность строк (?)

 

 

Для того, чтобы прекратить выполнение программы, потребуется предпринять специальные меры - например выключить компьютер.

Другой вариант - программа, в ходе выполнения которой на экране регулярно возникает вопрос, следует ли продолжать работу, или прекра­тить выполнение программы:

 

 

program ех_3;

 

var х: real;  s: char;

 

begin s:=’д’;

while s=’д’ do begin write(‘x=’); read(x); writeln(‘ f(x)= ‘, sin(sqrt(x))); writeln(‘ продолжить?(д или н) ‘); read(s); write(‘ ‘); end; end.

 

Когда выполняется эта программа, на экране возникает следующая последовательность строк: (?)

 

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

 

Описание функций работающих с символьными переменными.

 

 

CHR(x: byte): char;

 

 

Преобразует целое число, имеющее тип BYTE, в один символ ASCII-кода. Следующая программа иллюстрирует возможности функции "CHR". Она выдаёт все символы кода ASCII на экран. При этом некоторые символы ASCII-кода (например 7, 10, 13) при обычных условиях не имеют изображения, а используются для реализации специальных функций (пере­вод курсора и т.д.) Благодаря использованному в операторе Write форма­ту каждый из изображаемых символов отделяется от соседнего пробелом (занимает две позиции)

 

 

Program ех_4;

 

 

var

i: byte;

 

begin

for i:=0 to 255 do write(chr(i):2); end.

 

ORD(c: char): byte;

 

Функция Ord выполняет действие, обратное функции Chr, т.е. возв­ращает порядковый номер символа параметра в таблице ASCII.

 

 

UpCase(c: char): char;

 

 

Осуществляет преобразование символов английского алфавита из строчных символов в прописные. Bсе остальные символы при применении этой функции остаются непреобразованными.

 

Контрольные вопросы.

1. Какие переменные называют символьными переменными?

2. Опишите тип данных CHAR.

3. Как используется в языке Turbo Pascal символ номер 39.

4. Какие преобразования выполняет функция ODD?

5. Какие преобразования выполняет функция CHR?

6. Какие преобразования выполняет функция UpCase?

7. Как используются специальные символы - "управляющие коды"?

8. Сколько символов содержится в таблице ASCII?

9. Опишите использования формата вывода информации в операторе Write

10. Как сравниваются символьные переменные при вычислении условий?

 

 










Последнее изменение этой страницы: 2018-04-12; просмотров: 210.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...