ПРИМЕРЫ

advertisement
ПРИМЕРЫ
программ на Паскале.
1. Program Input-Output;
{Программа вводит два целых числа и выводит частное от деления
первого на второе}
Var
N1, N2 : integer;
X : real;
Begin
Write(‘N1=’);
ReadLn(N1);
Write(‘N2=’);
ReadLn(N2);
X:=N1/N2;
WriteLn(‘N1/N2=’, X);
End.
2. Program Code;
{Программа читает символ с клавиатуры и выводит на экран этот
символ и соответствующий ему внутренний код}
Var
Ch : char;
Begin
Write(‘Введите символ’);
ReadLn(Ch);
WriteLn(ch, ‘=’, ord(ch));
End.
3. Program Max;
{Программа выводит максимальное их двух чисел}
Var
x, y, max : integer;
begin
Write(‘Vvod x’);
Read(x);
Write(‘Vvod max’);
Read(max);
if x>max then y:=x
else y:=max;
WriteLn(y);
End.
4. Program Sum;
{Программа вводит целое положительное число N и подсчитывает
сумму всех целых чисел от 1 до N}
var
i,n,s : integer;
begin
Write(‘N=’);
ReadLn(n);
s:=0;
for i:=1 to n do
s:=s+I;
WriteLn(‘Сумма=’,s);
End.
5. Program Calc;
{Программа вводит два числа и один из знаков + - * / и выводит на
экран результат арифметического действия}
var
operation : char;
x, y, z : real;
stop : boolean; {признак ошибочной операции и останова}
begin
stop:=false;
repeat
Write(‘x,y=’);
ReadLn(x,y);
Write(‘Операция’);
ReadLn(operation);
Case operation of
‘+’ : z:=x+y;
‘-’ : z:=x-y;
‘*’ : z:=x*y;
‘/’ : z:=x/y;
else stop:=true;
end;
if not stop then
WriteLn(‘Результат=’,z);
Until stop
End.
6. Program Mas;
{Программа создает массив из N случайных чисел, распределенных в
диапазоне от 0 до MAX_VALUE-1, подсчитывает среднее
арифметическое этих чисел, минимальное и максимальное из них}
const
N=1000;
MAX_VALUE=100+1;
Var
m : array [1..N] of integer;
i : integer; {индекс массива}
max, min : integer;
s : real;
begin
{наполняем массив случайными числами}
for i:=1 to N do
m[i]:=random(MAX_VALUE);
{задаем начальное значение переменных}
s:=0;
max:=m[1];
min:=m[1];
{цикл вычисления суммы всех случайных чисел и поиска
минимального и максимального}
for i:=1 to N do
begin
s:=s+m[i];
if m[i]<min then
min:=m[i]
else if m[i]>max then
max:=m[i]
end;
WriteLn(‘Min=’,min,’Max=’,max,’Sred=’,s/N)
End.
7. Program CharConvert;
{Программа вводит текстовую строку, преобразует все входящие в нее
буквы в прописные и выводит результат}
Procedure UpString(s1:string; var s2:string);
{Процедура преобразует буквы входной строки s1 в прописные буквы
латинского алфавита и помещает результат преобразования в выходную
строку s2. Предполагается, что последовательность букв образуют
непрерывный массив. В соответствии с таблицей кодировки символов
коды символов латинских строчных букв от а до z образуют непрерывный массив
монотонно нарастающих чисел от 97 до 122, а коды соответствующих им прописных букв
– непрерывный массив чисел от 65 до90. Преобразование строчных букв в прописные
состоит в уменьшении кода буквы на 32}
Var
i:integer;
c:char; {Рабочая переменная преобразования}
begin
s2:=’’; {вначале выходная строка пустая}
{Цикл посимвольного анализа исходной строки}
for i:=1 to Length(s1) do
begin
{Берем из входной строки очередной символ}
c:=s1[i];
{Проверяем символ на принадлежность к массиву}
if (c>=’a’) and (c<=’z’) then
c:=chr(ord(‘A’)+ord(c)-ord(‘a’));
s2:=s2+c;
end
end;
Var
Sinp, Sout:String; {Исходная и преобразованная строки}
Begin
Write(‘Введите строку’);
ReadLn(Sinp);
UpString(Sinp, Sout); {Преобразуем введенную строку к прописным б}
WriteLn(‘Результат’, Sout)
End.
8. Program CharConvert1;
Function UpString(s1:string):string;
Var
i:integer;
c:char;
s2:string {Результат преобразования}
begin
s2:=’’;
for i:=1 to Length(s1) do
begin
c:=UpCase(s1[i]);
s2:=s2+c;
end;
UpString:=s2 {Присваиваем значение функции UpString }
end;
Var
Sinp:String;
Begin
Write(‘Введите строку’);
ReadLn(Sinp);
WriteLn(‘Результат’, UpString(Sinp))
End.
Download