Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Задания для самостоятельного выполнения лабораторной работы 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; { подсчёт символов "!" } 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 не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |