Задание №1.
Вариант Р.
Какие строковые функции используются в Турбо-Паскале? Задайте какие-либо строковые переменные и примените к ним строковые функции.
В Турбо-Паскале существует тип данных String (строка), специально предназначенный для обработки строк (цепочек символов). Он не относится к простым типам данных и занимает промежуточное место между простыми и структурированными типами данных.
Переменная типа String состоит из цепочки символов, т.е. элементов типа Char. Строки могут выводиться на экран монитора посредством стандартных процедур Write и WriteLn и вводиться с помощью стандартной процедуры ReadLn или Read. В большинстве случаев переменные типа String используются для хранения слов и сообщений, состоящих из нескольких символов.
Турбо-Паскаль представляет в распоряжение пользователей целый ряд процедур и функций, предназначенных для обработки строк.
Length — позволяет определить фактическую длину текстовой строки, хранящейся в указанной переменной.
Var
Words: String;
Begin
Write (‘ Введите слово:’);
ReadLn (Words);
WriteLn;
WriteLn (‘Это слово состоит из ‘, Length (Words),’букв’);
End.
UpCase — позволяет преобразовать любой символ из строчного в прописной. Эта функция рассчитана на обработку отдельного символа. Русские литеры не могут обрабатываться этой функцией.
Var
S: String;
I: Integer;
Begin
S:=’alex’;
For I=1 to 4 do S[I]:=UpCase (S[I]);
WriteLn (S);
End.
На экран будет выведена надпись: ALEX.
Copy — позволяет копировать фрагмент некоторой строки из одной переменной в другую. Вызывая данную функцию необходимо указать следующие параметры:
имя строки, из которой должен извлекаться копируемый фрагмент;
позицию в строке, начиная с которой будет копироваться фрагмент;
число копируемых символов.
Var
s:string[8];
s1:string[3];
Begin
s:=’домашний’;
s1:=Copy (s,1,3);
writeln (s1); {на экран выводится: дом}
End.
Pos — с помощью этой функции можно осуществить в некоторой строке поиск определенного фрагмента. Если заданный фрагмент в строке присутствует, то функция возвращает номер позиции в строке, с которой этот фрагмент начинается. Если фрагмент не найден в строке, то функция возвращает нуль.
...
s:=’машина’;
i:=pos (‘шина’,s);
if i=0 then writeln (‘ данный фрагмент не содержится в строке’) else
writeln (‘ данный фрагмент содержиться в строке начиная с ‘,i:3,’ позиции.’);
...
Как формируется имя переменной файлового типа в тексте программы? По каким правилам формируется имя файла в операционной системе MS-DOS? Какая процедура используется для связывания конкретной файловой переменной программы с конкретным файлом на внешнем устройстве? Приведите примеры имен файловой переменной и имен файла на внешнем устройстве.
Правила формирования файловой переменой в языке Турбо-Паскаль совпадают с правилами формирования обычной переменной:
переменная должна состоять из латинских строчных и/или прописных букв, а также арабских цифр от 0 до 9 (цифры можно использовать наряду с буквами начиная со второй позиции) и символа подчеркивания (ASCII-код 95);
имя переменной должно начинаться с латинской буквы или символа подчеркивания;
пробел в Турбо-Паскале является разделителем и не может быть использован в имени переменной;
применение других символов в именах переменных не допускается;
зарезервированные слова также не могут быть использованы в качестве имен переменных.
Имена файлов в системе MS-DOS.
Каждый файл на диске имеет обозначение, которое состоит из двух частей: имени и расширения ( часто имя и расширение вместе также называют именем, как правило, это не приводит к путанице). В имени файла может быть от 1 до 8 символов. Расширение начинается с точки, за которой следует от 1 до 3 символов. Например:
command.com
autoexec.bat
config.sys
paper.doc
Имя и расширение могут состоять из прописных и строчных латинских букв, цифр и символов: - _ $ # & @ ! % () {} ’ ~ ^
Расширение имени файла является необязательным. Оно, как правило, описывает содержимое файла, поэтому использование расширения файла весьма удобно.
В имени и расширении имени файла прописные и строчные латинские буквы являются эквивалентами, так как DOS переводит все строчные буквы в соответствующие прописные буквы.
Процедурой, которая связывает имя файловой переменной с конкретным файлом на диске, является процедура Assign(<имя файловой переменной>,<имя файла на диске>).
Var
filename: file of integer;
path:string;
Begin
write (‘ Введите имя файла на диске:’);
readln (path);
assign (filename,path);
...
Задание №2.
9.Вычислить значение переменной по расчетной формуле и исходным данным. На экран вывести значение исходных данных и результаты расчетов.
Q=
uses crt;
var
q,b,s,x:real;
begin
clrscr;
write ("Введите значение x:");
readln (x);
write ("Введите значение b:");
readln (b);
write ("Введите значение s:");
readln (s);
clrscr;
q:=(b*sqrt(x)-s)/(exp(s*x)-1);
writeln ("Исходные данные");
writeln ("x=",x:5:2,",b=",b:5:2,",s=",s:5:2);
writeln ("Результат");
writeln ("Q=",q:8:2);
readln;
end.
Задание №3а.
Ввести одномерный массив X вещественных чисел. Размерность массива 7. Переписать элементы этого массива в обратном порядке в массив Y. Вывести на экран массивы X и Y.
uses crt;
var
x,y:array [1..7] of real;
i:integer;
begin
clrscr;
writeln ("Ввод элементов массива");
for i:=1 to 7 do
begin
gotoxy (29,2);
writeln (" ");
gotoxy (1,2);
write ("Введите ",i,"-й элемент массива:");
readln (x[i]);
end;
for i:=7 downto 1 do y[i]:=x[8-i];
clrscr;
writeln ("Массив X:");
for i:=1 to 7 do
begin
write (x[i]:3:2,";");
end;
writeln;
writeln ("Массив Y:");
for i:=1 to 7 do
begin
write (y[i]:3:2,";");
end;
end.
Задание №3б.
Написать программу анализа динамики поквартального роста дохода различных социальных слоев населения в течении года. Для этого ввести количество категорий слоев населения, название категорий населения и величину дохода каждой категории по кварталам. Определить средний доход по всем категориям за каждый квартал и во сколько раз увеличился доход в четвертом квартале по сравнению с первым. Исходные данные и результаты расчетов представить в виде таблицы.
uses crt;
type
tkat_inf=record
name:string[30];
income:array [1..4] of real;
end;
var
num,int:integer;
kat_inf:array [1..100] of tkat_inf;
first,second,third,forth:real;
procedure input_data(var n:tkat_inf);
var i:integer;
begin
clrscr;
write ("Введите название категории:");
readln (n.name);
for i:=1 to 4 do
begin
gotoxy (44,2);
writeln (" ");
gotoxy (1,2);
write ("Введите доход данной группы за ",i,"-й квартал:");
readln (n.income[i]);
end;
end;
procedure output_data (b:tkat_inf);
var i:integer;
begin
writeln
(b.name:30,"|",b.income[1]:7:2,"|",b.income[2]:7:2,"|",b.income[3]:7:2,"|",b.income[4]:8:2,"|",b.income[4]/b.income[1]:15:2);
writeln ("------------------------------+-------+-------+-------+--------+---------------");
end;
Begin
clrscr;
num:=101;
while num>100 do
begin
write ("Введите количество категорий населения (<=100):");
readln (num);
end;
for int:=1 to num do input_data (kat_inf[int]);
clrscr;
writeln ("-----------------------------------------------------------------------------------------");
writeln ("Название категории | Средний доход | Увеличение ");
writeln (" |----------------------------------| дохода ");
writeln (" | I | II | III | IV | за год ");
writeln ("----------------------------------+-------+-------+-------+-------+------------------");
for int:=1 to num do
begin
output_data (kat_inf[int]);
first:=first+kat_inf[int].income[1];
second:=second+kat_inf[int].income[2];
third:=third+kat_inf[int].income[3];
forth:=forth+kat_inf[int].income[4];
end;
writeln ("средний доход за квартал |",first/num:7:2,"|",second/num:7:2,"|",third/num:7:2,"|",forth/num:8:2,"| -");
writeln ("-------------------------------------------------------------------------------");
End.
1. Пример вычисления интерграла по формуле симпсона
2. Метод симпсона пример решения задач
3. Пример задачи по формуле симпсона
4. Баланс торговой организации пример
5. Баланс рабочего времени пример
6. Внешнеэкономический контракт купли продажи пример
7. Бюджетно распределительные счет пример
8. Анкета социологического опроса пример
10. Анкета по социологии пример
11. Дневник отчет по практике экономика пример
12. Метод средних прямоугольников пример
13. Баланс предприятия форма и форма пример
14. Дневник по практике пример заполнения
15. График пример паутинообразная модель