Редактирование и отладка программ с помощью Pascal

Отчет по практике - Компьютеры, программирование

Другие отчеты по практике по предмету Компьютеры, программирование

шивает название футбольной команды и повторить его на экране со словом Это чемпион!

 

Program as;

Uses crt;

Var k:string;

Begin clrscr;

Writeln(Введите название футб. команды);

Readln(k);

Writeln(k, ,Чемпион!);

End.

 

Задание 5. Дана строка символов s1,s2,...sn, в которой встречаются цифры, пробелы, буква Е и знаки + и -. Известно, что первый символ строки является цифрой. Из данной строки выделить подстроку предшествующую первому пробелу. Требуется: определить является ли это подстрока числом, если да, то выяснить целым или вещественным, положительным или отрецательным

 

Program Stroki;

Uses Crt;

Var s1,s2:string;

i:Integer;

k:Real;

f:boolean;

begin

ClrScr;

Writeln(Введите строку символов:);

Readln(s1);

s2:=;

f:=true;

for i:=1 to length(s1) do begin

if s1[i]= then f:=false;

if (s1[i]<> ) and (f=true) then s2:=s2+s1[i];

end;

Writeln(Выделенная подстрока: ,s2);

Val(s2,k,i);

if i<>0 then Writeln(Выделенная подстрока не содержит числовое значение)

else begin

f:=false;

for i:=1 to length(s2) do

if s2[i]=E then begin

Write(Число в подстроке вещественного типа, );

f:=true;

end;

if f=false then Write(Число в подстроке целочисленного типа, );

if k<0 then Writeln(отрицательное)

else Writeln(положительное)

end;

Write(Для выхода нажмите Enter);

Readln;

end.

 

Задание 6. Дано название футбольного клуба, определить кол-во символов в нем

 

Program as;

Uses crt;

Var k:string; M:integer;

Begin clrscr;

Writeln(Введите название Ф.К);

Readln(k);

M:=length(k);

Writeln(M);

End.

 

Задание 7. Дано название города, определить четно или нет, кол-во символов в нем

 

Program as;

Uses crt;

Var k:string;b:integer;

Begin clrscr;

A:=Aktobe;

B:=length(a);

If b mod 2=0 then write(четно ) else write(нечетно );

Readln;

End.

 

Задание 8. Дана строка, содержащая текст. Записать её в обратном порядке

 

program з8;

var s1,s2: String;

i: Integer;

begin

Write(Введите строку=);

ReadLn(s1); s2:=;

for i:=Length(s1) downto 1 do s2:=s2+s1[i]; WriteLn(Обратная строка=,s2);

ReadLn; end.

 

Задание 9. Дано слово. Заменить о на е

 

Program as;

Uses crt;

Var a:string; e,I,b:integer;

Begin clrscr;

Writeln(Dano clovo);

Readln(a);

B:=length(a);

For i:=1 to b do if copy(a,I,1)=o then begin

Delete(a,I,1);

Insert(e,a,i);

End;

Writeln(a);

End.

 

Задание10. Даны 2 фамилии опред какая из них длиннее

 

Program as;

Uses crt;

Var a,b:string; c,d:integer;

Begin clrscr;

A:=kolin;

B:=imanalin;

C:=length(a);

D:=:=length(b);

If c>d then write(a) else write(b);

End.

Графика в Турбо-Паскале

 

Задание 1. При нажатии на Enter плавно перемещает треугольник c вершинами (10,10);(10,100);(100,100) на 10 пунктов по X, и по Y

 

uses crt,graph;

const n=4;

type

Point=record

x,y:integer;

end;

mas=array[1..n] of Point;

procedure Z(x,y:integer;var m:mas;c:byte);

var i:byte;

begin

Setcolor(c);

m[1].x:=x;m[1].y:=y;

m[2].x:=x;m[2].y:=y+90;

m[3].x:=x+90;m[3].y:=y+90;

m[4].x:=x;m[4].y:=y;

moveto(m[1].x,m[1].y);

for i:=1 to n do

lineto(m[i].x,m[i].y);

Setfillstyle(1,c);

end;

var gd,gm:integer;

x,y,x1,y1,i:integer;

p:mas;

c1,c2:byte;

k:char;

move:boolean;

begin

gd:=VGA;

gm:=VGAHi;

Initgraph(gd,gm,..\bgi);

Setbkcolor(8);

x:=10;y:=10;

c1:=7;c2:=8;

move:=true;

repeat

if keypressed then

begin

k:=readkey;

if k=#13 then {if enter}

for i:=1 to 10 do

begin

y1:=y;

x1:=x;

y:=y+1;

x:=x+1;

delay(6000);

Z(x1,y1,p,c2);

Z(x,y,p,c1);

move:=true;

end;

end;

if move then

begin

Z(x1,y1,p,c2);

Z(x,y,p,c1);

move:=false;

end;

OutTextXY(320,240,Press Enter to continue);

until k=#27; {until escape}

closegraph;

end.

 

Задание 2. Изобразить на экране скачущий мяч. Использовать графический режим

 

uses crt,graph;

const r=20;h=5;

var gd,gm,i,n,t,x,y,p:integer;

begin

clrscr;

gd:=Detect;

initgraph(gd,gm,c:\bp\bgi );

setcolor(4);

setlinestyle(0,1,1);

line(0,479,639,479);

x:=r;y:=r;

t:=479-2*r;

n:=t div h;

p:=h;

while n<>0 do begin

for i:=1 to n do begin

setcolor(2);

circle(x,y,r);

setfillstyle(1,2);

floodfill(x,y,2);

delay(10);

setcolor(0);

circle(x,y,r);

setfillstyle(1,0);

floodfill(x,y,0);

y:=y+p;

x:=x+1;

end;

if p>0 then begin t:=round(3*t/4);n:=t div h end;

p:=-p end;

setcolor(12);

circle(x,y,r);

setfillstyle(1,2); repeat until keypressed;closegraph

floodfill(x,y,12); end.

 

Задание 3. Анимационная картинка - кораблик совершает путь по заданной траектории...все происходит довольно быстро

 

program corablik;

uses Graph, Crt;

var

grDriver: integer;

grMode: integer;

ErrCode: integer;

x,y,y0,a,b: integer;{a,b-переменные для линии моря, чтоб они не зависели от х,у}

procedure more(a,b:integer);

begin

moveto(0,y0);

setcolor(blue);

for a:=0 to 680 do{слева направо рисуем синусоиду синего чвета}

begin

b:=y0-round(sin(a*pi/180)*30);{30-коэффициент масштабирования по оси Х,

чем больше, тем волна круче}

lineto(a,b);

end;

end;

begin

grDriver:= Detect;

InitGraph(grDriver, grMode, ..\BGI);

ErrCode:= GraphResult;

y0:= 250;

if ErrCode = grOk then

begin

x:=600;

while x>=0 do{лучше использовать цикл while, можно менять величину шага,

что тоже влияет на скорость и частоту смены картинки}

begin

cleardevice;

more(a,b);{рисуем волну}

setcolor(white);{устанавливаем цвет кораблика}

y:=y0-40-round(sin(x*pi/180)*30);{движемся по волне}

MoveTo(x - 40, y + 20);

LineTo(x - 20, y + 40);

LineTo(x + 20, y + 40);

LineTo(x + 40, y + 20);

LineTo(x - 40, y + 20);

MoveTo(x + 15, y + 20);

LineTo(x + 15, y - 40);

LineTo(x - 20, y + 20);

LineTo(x + 15, y + 20);

delay(100); {нормальная скорость, если модули *.TPL не глючные как у Вас,

время должно быть в миллисекундах, а не в каких-нибудь наносекундах}

x:=x-2;{шаг движения}

end;

end

else Writeln(Graphics error: , GraphErrorMsg(ErrCode));

Settextstyle(0,0,3);{устанавливаем стиль шрифта}

cleardevice;

setcolor(red);

OuttextXY(200,240,Rejs zavershen!);{выводим надпись}

readln;

CloseGraph;

end.

 

Задание 4. Анимация - прямоугольничек красного цвета совершает полный пут