В Закладки

Главная
Официальная
Новости
Курсовые работы
Дипломные проекты
Лекции и конспекты
Рефераты
Софт
Ссылки
Справочник Студента
Гостевая

Почта


Поиск по сайту:

          


















Лабораторные работы по информатике.

Лабораторные работы по информатике.

Федеральное агентство по образованию

Московский государственный университет приборостроения и информатики

Содержание.

Лабораторная работа №1

1. Условие 4

2. Блок – схема 4

3. Текст программы 5

4. Таблица значений 5

5. Результат проверки 5

Лабораторная работа №2

1. Условие 6

2. Блок – схема 6

3. Текст программы 7

4. Таблица значений 7

5. Результат проверки 7

Лабораторная работа №3

1. Условие 8

2. Блок – схема 8

3. Текст программы 9

4. Таблица значений 9

5. Результат проверки 9

Лабораторная работа №4

1. Условие 10

2. Блок – схема 10

3. Текст программы 11

4. Таблица значений 11

5. Результат проверки 11

Лабораторная работа №5

1. Условие 12

2. Блок – схема 12

3. Текст программы 13

4. Таблица значений 13

5. Результат проверки 13

Лабораторная работа №6

1. Условие 14

2. Блок – схема 14

3. Текст программы 15

4. Таблица значений 15

5. Результат проверки 16

Лабораторная работа №7

1. Условие 16

2. Блок – схема 16

3. Текст программы 17

4. Результат проверки 17

5. Таблица значений 18

Лабораторная работа №8

1. Условие 19

2. Блок – схема 19

3. Текст программы 20

4. Таблица значений 20

5. Результат проверки 20

Лабораторная работа №9

1. Условие 21

2. Блок – схема 21

3. Текст программы 22

4. Таблица значений 22

5. Результат проверки 22

Лабораторная работа №1

Условие лабораторной работы.

Создать алгоритм решения квадратного уравнения вида: Ах?+Вх+С=0. Разработать программу, соответствующую заданному алгоритму.

Блок-схема.

Текст программы.

program lr_1;

var A,B,C: real;

d: real;

p: char;

x,y: real;

x1,x2,y1,y2:integer;

begin

repeat

write ('Vvedite znachenie: a,b,c=');

readln (a,b,c);

writeln;

if A=0 then if B=0 then writeln('corney net')

else begin

x:=-C/B;

writeln('X=',x:5:2);

end

else begin

d:=sqr(B)-4*A*C;

A:=2*A;

if d<0 then writeln('corney net')

else if d=0 then begin

x:=-B/A;

writeln('х1=х2=',x:5:2);

end

else begin

d:=sqrt(d);

x:=(-B-d)/A;

y:=(-B+d)/A;

writeln('X1=',x:5:2,' X2=',y:5:2);

end;

end;

writeln(' Povtorit raschet? Y/N');

readln(p);

until (p='N')or(p='n');

end.

Таблица значений .

переменные условие вывод

A=2

B=5

C=2

0=0 да

0=0 да -0.5

-2

p=n p=N нет

p=n да

Результат проверки.

Лабораторная работа №2.

Условие лабораторной работы.

Разработать программу выдачи списка кодов и соответствующих им символов.

Блок-схема.

Текст программы.

program cod_sim;

uses crt;

var n,i,s,k: integer;

sim,p: char;

begin

repeat

clrscr;

write('Zadayte celoe polojitelnoe chislo: n=');

readln(n);

writeln;

write('Zadat kolichestvo strok: k=');

readln(k);

writeln;

s:=0;

for i:=1 to n do

begin

sim:=chr(i);

write(i,'-',sim,' ');

s:=s+1;

if s=k then

begin

s:=0;

writeln;

end;

end;

writeln('Povtorit raschet? Y/N');

readln(p);

until (p='N')or(p='n');

end.

Таблица значений.

переменные условие вывод

k=4

n=2

s=0,1,2,0,1,2,0

i=1,2,3,4,5

sim=?,?,?,? 1>4 нет

1=2 нет

2>4 нет

2=2 да

3>4 нет

1=2 нет

4>4 нет

2=2 да

5>4 нет 1-? 2-?

3-? 4-?

p=n p=N нет

p=n да

Результат проверки.

Лабораторная работа №3.

Условие лабораторной работы.

Разработать программу вычисления длины окружности L, площади круга S и объема шара V.

Блок-схема.

Текст программы.

program lr_3;

uses crt;

label metka1;

var L,S,V,R:real;

p:char;

begin

repeat

metka1:

clrscr;

write('Vvedite radius: R=');

readln(R);

if R<=0 then begin

writeln('Radius dolgen bit pologitelnim');

goto metka1;

end;

L:=2*pi*R;

S:=pi+sqr(R);

V:=(3/4)*pi*exp(ln(R)*3);

writeln;

writeln('Dlna okrugnosti L=',L:5:3);

writeln('Ploshad kruga S=',S:5:3);

writeln('Obem shara V=',V:5:3);

writeln('Povtorit raschet? Y/N');

readln(p);

until (p='N')or(p='n');

end.

Таблица значений.

переменные условие вывод

R=12 12<0 нет

L=75.398 Длина окружности L=31.416

S=147.142 Площадь круга S=28.142

V=4071.504 Объем шара V=294.524

p=N p=N да

p=n нет

Результат проверки.

Лабораторная работа №4.

Условие лабораторной работы.

Разработать программу вычисления факториала числа n.

Блок-схема.

Текст программы.

program ftrl;

uses crt;

label metka1;

var n,i,ft:longint;

p:char;

begin

repeat

write('Vvedite celoe polozhitelnoe chislo: n=');

readln(n);

writeln;

ft:=1;

writeln('Nomer shaga Znachenie faktoriala');

for i:=1 to n do begin

ft:=ft*i;

writeln(i:5,i:15,'!=',ft);

end;

writeln('Повторить расчет? Y/N');

readln(p);

until (p='N')or(p='n');

end.

Таблица значений.

переменные условие вывод

n=4

ft=1,1,2,6,24 1 1!=1

i=1,2,3,4,5 1>5 нет 2 2!=2

2>5 нет

3>5 нет

4>5 нет

5>5 нет 3 3!=6

4 4!=24

p=n p=N нет

p=n да

Результат проверки.

Лабораторная работа №5.

Условие лабораторной работы.

Задано целое положительное число n с клавиатуры. Разработать программу вычисления значения y по формуле: y=(1+(2+(3+…(n-1+(n)?)?)…)?)?)?. Выводить в окне пользователя значение y для каждого шага i. Значение y вычислять до тех пор, пока разность значений y на двух последующих шагах больше некоторой заданной величины e, введенной с клавиатуры.

Блок-схема.

Текст программы.

program koren;

uses crt;

var n,i,s,j:integer;

y,r,e,x:real;

p:char;

begin

repeat

write('Vvedite celoe polozhitelnoe chislo: n=');

readln(n);

write('Vvedite: e=');

readln(e);

writeln;

y:=0;

s:=0;

r:=0;

x:=0;

repeat

s:=s+1;

for i:= s downto 1 do y:=sqrt(i+y);

writeln('шаг ',s,' y=',y:3:20);

r:=y-x;

x:=y;

y:=0;

until (s=n) or (r<=e);

writeln;

writeln('Повторить расчет? Y/N');

readln(p);

until (p='N')or(p='n');

end.

Таблица значений.

переменные

условие

вывод

n e y s r x i p

3 0.3 0

1

0 0

1 0

1 0

1 1

0 1<1 нет

0<1 да

1=3 или 1<=0.3 нет шаг 1 y=1.000000

1.414213

1.553773

0 2 0.553773 1.414213 2

1

0 2<1 нет

1<1 нет

0<1 да

2=3 или 0.553773<= 0.3 нет шаг 2 y=1.553773

1.732050

1.931851

1.712265

0 3 0.158492 1.712265 3

2

1

0

3<1 нет

2<1 нет

1<1 нет

0<1 да

3=3 или 0.158492<=0.3 да шаг 3 y=1.712265

n p=N нет

p=n да

Результат проверки.

Лабораторная работа №6.

Условие лабораторной работы.

Разработать программу вычисления n-чисел последовательности Фибоначчи. Вычислять последовательность до тех пор, пока последнее число не станет больше заданного с клавиатуры числа m.

Блок-схема.

Текст программы.

program fobo;

Uses Crt;

var i,n,m,r:integer;

p:char;

f:array[0..3000] of integer;

begin

clrscr;

repeat

writeln;

writeln('Zadaite celoe pologitelnoe chislo n=');

readln(n);

writeln('Zadaite pologitelnoe chislo r=');

readln(r);

f[0]:=1;

f[1]:=1;

writeln('f[0]=1');

writeln('f[1]=1');

i:=1;

repeat

i:=i+1;

f[i]:=f[i-1]+f[i-2];

writeln('f[',i,']=',f[i]);

until f[i]-f[i-1]>r;

writeln('Povtorit raschet y/n?');

readln(p);

until (p='n') or (p='N');

end.

Таблица значений.

переменные

условие

вывод

n m fn1 fn i fn2 p

5 4 1

0 0

1 0

1 1 1>=4 или 1=5 нет 1

1 1 2 0 1>=4 или 2=5 нет 1

1 2 3 1 2>=4 или 3=5 нет 2

2 3 4 1 3>=4 или 4=5 нет 3

3 5 5 2 5>=4 или 5=5 нет 5

n p=N нет

p=n да

Результат проверки.

Лабораторная работа №7.

Условие лабораторной работы.

Программа транспонирования матрицы.

Блок-схема.

Текст программы.

program lr_7;

uses crt;

const row=3;

col=row;

var p: char;

a: array [1..row,1..col] of integer;

i,j,buf: integer;

begin

repeat

clrscr;

randomize;

writeln('matrica sluchaynyh chisel:');

writeln;

for i:=1 to row do

begin

for j:=1 to col do

begin

a[i,j]:=random(100);

write(a[i,j]:4);

end;

end;

writeln;

for i:=1 to row do

for j:=i+1 to col do

begin

buf:=a[i,j];

a[i,j]:=a[j,i];

a[j,i]:=buf;

end;

writeln('Rezultat transponirovania matricu:');

writeln;

for i:=1 to row do

begin

for j:=1 to col do write(a[i,j]:4);

writeln;

end;

readln;

writeln('повторить расчет? Y/N');

readln(p);

until (p='N')or(p='n');

end.

Таблица значений.

Исходная матрица: 1 2 3

4 5 6

7 8 9

Обмен строк и столбцов

переменные условие вывод

i=1,2,3,4 1>3 нет

2>3 нет

3>3 нет

4>3 да

j=2,3,4,3,4,4 2>3 нет

3>3 нет

4>3 да

3>3 нет

4>3 да

4>3 да

buf=2,3,6

a[i,j]=4,7,8

a[j,i]=2,3,6

Результат транспонирования матрицы

переменные условие вывод

i=1,2,3,4 1>3 нет

2>3 нет

3>3 нет

4>3 да

j=1,2,3,4,1,2,3,4,1,2,3,4 1>3 нет

2>3 нет

3>3 нет

4>3 да

1>3 нет

2>3 нет

3>3 нет

4>3 да

1>3 нет

2>3 нет

3>3 нет

4>3 да 1 4 7

2 5 8

3 6 9

p=N p=n нет

p=N да

Результат проверки.

Лабораторная работа №8

Условие лабораторной работы.

Программа, которая определяет цифровой корень числа.

Блок-схема.

Текст программы.

program lr_8;

uses crt;

function num (n:longint):integer;

var s:integer;

begin

s:=0;

while n<>0 do

begin

s:=s+n mod 10;

n:=n div 10;

end;

num:=s;

end;

var n:longint;

k:integer;

p:char;

begin

repeat

clrscr;

write('vvedite: n=');

readln(n);

while n>9 do n:=num(n);

writeln ('cyfrovoy koren ',n);

writeln;

writeln('povtorit raschet?');

readln(p);

until (p='N') or (p='n');

end.

Таблица значений.

переменные вывод условие

n=345,34,3,0 345<>0 да 345>9 да

s=0,5,4,3 34<>0 да 34>9 да

num=5,4,3 3<>0 да 3>9 нет

p=N 0<>0 нет

3

p=n нет

p=N да

Результат проверки.

Лабораторная работа №9

Условие лабораторной работы.

Программа вычисления натурального логарифма от 1 до n.

Блок-схема.

Текст программы.

program lr_9;

uses crt;

var x,n,i:integer;

y:real;

p:char;

procedure line30;

begin

for i:=1 to30 do write('-');

end;

begin

repeat

clrscr;

write('vvedite celoe znachenie: n=');

readln(n);

line30;

writeln;

writeln('Tablica logarifmov chisel ot 1 do',n);

for x:=1 to n do begin

y:=ln(x);

writeln(x:3,y:8:3);

end;

line30;

writeln;

writeln('povtorit raschet?);

readln(p);

until (p='N')or(p='n');

end.

Таблица значений.

шаги переменные условие вывод

n x y p

1 4

2 1 0.000 1>5 нет 1 0.000

3 2 0.693 2>5 нет 2 0.693

4 3 1.099 3>5 нет 3 1.099

5 4 1.386 4>5 нет 4 1.386

5 5 5>5 да

6 n p=N нет

p=n да

Результат проверки.