Отчет учебной практики по основам алгоритмизации и программирования

Автор работы: Пользователь скрыл имя, 24 Декабря 2010 в 19:57, отчет по практике

Описание

1. Изучили основные виды загрузки и приемы работы в Тurbo Рascal и процесс отладки.
2. Изучили различные типы данных и признаки концов строки на Pascal
3. Изучили виды выражений и сравнения с текстовыми и числовыми условиями.
4. Решали задачи по ограничению отладки

Содержание

I. Программирование алгоритмов линейной структуры.
1. Арифметические выражения, простейшие программы , программы на вычисление по известным формулам.
2. Задачи на целочисленное деление.
II. Программирование алгоритмов разветвляющейся структуры.
1. Полный условный оператор.
2. Целочисленная арифметика и условный оператор.
3. Неполный условный оператор.
4. Вложенные условные операторы.
5. Оператор выбора.
III. Программирование алгоритмов циклической структуры.
1. Оператор цикла с параметром.
2. Условный оператор в теле цикла.

Работа состоит из  1 файл

Практика.doc

— 251.50 Кб (Скачать документ)

                    -1, если  x<1

    Y(x) y=      x, если  x<1

                     1,  если  х=1

                                                                         

Program primer;                                                     

Uses crt;                                                                                                      

Var   y,x: integer;                                                                                                                                                              

Begin clrscr;

Readln(x);

If (x<-1) then y:=1

       else begin

if (x>1) then y:=x

    else begin

if (x=1) then y:=1;

end;

end;

writeln (y);

end. 

2.4.2. Составить программу для вычисления значения функции z(a)

         1, a>0 

Z=    0, a=0

       -1, a<0 

Program primer1;

Uses crt;

Var   a,z: integer;

Begin clrscr;

Readln (a);

If (a>0) then z:=1

              else begin

if (a=0) then z:=0

             else begin

if (a<0) then z:=-1;

end;

end;

writeln (z);

end. 

2.4.3.Дано вещественное число х вычислить f(x)

       0, x<=0

f=    x, 0<x<=1

       x sqr, в остальных случаях.      

program primer 2;

Uses crt;

Var f,x: integer;

Begin clrscr;

Readln(x);

If (x<=0) then f:=0

                else begin

if (x=1) and (x>0) then f:=x

                                else f:=x;

end;

writeln (f);

end. 

2.4.4. Дано вещественное число х вычислить f(y) если

        2, если y>2

f=    0, если 0<y<=2

       -3y, в остальных случаях

Program primer3;

Uses crt;

var f,y: integer;

begin clrscr;

readln (y);

if (y>2) then f:=2

             else begin

if (y<=2) and (y>0) then f:=0

                                  else  f:=-3*x*y;

end;

writeln (f);

end.

 

 

2. 5. Оператор выбора 

   2.5.1.Составить программу, которая в зависимости от порядкового номера дня недели выводит на экран его название.

  

    Program primer1;

    Uses crt;

    Var x :integer;

    Begin clrscr;

              Readln(x);

              Case x of;

              1: writeln(‘pn’);

              2: writeln(‘vt’);

              3:writeln(‘sr’);

              4:writeln(‘chet’);

              5:writeln(‘pt’);

              6:writeln(‘sb’);

              7:writeln(‘vs’);

              Else writeln(‘takogo dnya net’);

              End;

      End. 

     2.5.2.Составить программу которая в зависимости от порядкового номера месяца выводит на экран его название. 

        Program primer2;

        Uses crt;

        Var a:integer;

        Begin clrscr;

                  Readln(a);

                  Case a of ;

                  1:writeln(‘yanv’);

                  2:writeln(‘fev’);

                  3:writeln(‘mart’);

                  4:writeln(‘apr’);

                  5:writeln(‘mai’);

                  6:writeln(‘iun’);

                  7:writeln(‘iul);

                  8:writeln(‘avg’);

                  9:writeln(‘sent’);

                 10:writeln(‘okt’);

                 11:writeln(‘noyab’);

                 12:writeln(‘dek’);

                 Else writeln(‘takogo mesyaca net’);

                End;

          End. 

2.5.3 Составить программу, которая в зависимости от порядкового номера месяца выводит на экран количество дней в этом месяце.

       Рассмотреть два случая: а) год  не является високосным;

                                                 в) год високосный. 

          Program primer3;

          Uses crt;

          Var x,a:integer;

          Begin clrscr;

                    Writeln(‘esli god visokosnyi vvedite 1 inache 0’);

                    Readln(a);

                    Writeln(‘vvedite nomer mesyaca’);

                    Readln(x);

                    If  a:=0 then begin

                                         Case x of ;

                                         2:writeln(’28 dnei’);

                                         4,6,9,11:writeln(’30 dnei’);

                                         Else writeln(’31 den’);

                                         End;                   

                                         End.

                                  Else begin

                                         Case x of ;

                                         2:writeln(’29 dnei’);

                                         4,6,9,11:writeln(’30 dnei);

                                         Else writeln(31 den);

                                         End;                                           

                                         End;

          End. 

2.5.4. Мастям игральных карт условно присвоены следующие порядковые номера:

«пики»-1, «трефы»-2, «бубны»-3, «червы»-4. По заданным номерам найти m(1<=m<=4),

определить название соответствующей масти. 

           Program primer4;

           Uses crt;

           Var m:integer;

           Begin clrscr;

                     Readln(m);

                     Case m of;

                     1:writeln(‘piki’);

                     2:writeln(‘trefi’);

                     3:writeln(‘bubni’);

                     4:writeln(‘shervi’);

                     Else writeln(‘takoi masti net’);

                     End;

            End. 

III. Программирование алгоритмов

циклической структуры 

1. Оператор цикла с параметром 

3.1.1. Вычислить к – количество точек с целочисленными координатами , попадающих в круг радиуса R с центром в начале координат. 

Program primer;

Uses crt;

Var x,y,r,k: integer;

  Begin clrscr;

K:=0;

Writeln (‘введите r’);

Readln (r);

For x= -r to r do

If x>2+y>2<r>2 then k:=k+1;

Writeln (k);

End. 

3.1.2. Определить, сколько из них большее своих соседей, т.е. предыдущего и последующего чисел. 

program primer;

uses crt;

var s,a1,a2,a3,a:real; i:integer;

begin clrscr;

readln (a1,a2,a3)

s:=0;

if (a2>a1) and (a2>a3) then s:=s+1;

for i:=4 to 10 do begin readln (a);

a1:=a2; a2:=a3; a3:=a;

if (a2>a1) and (a2>a3) then s:=s+1;

end;

writeln (s);

end. 

3.1.3. Дано 10 вещественных чисел: 

         А) определить, сколько из них принимает значение, больше заданного числа b.  

       Program primer;

        Uses crt;

       Var s,a,b: real; i:integer;

         Begin clrscr;

        Writeln (‘введите число в');

        Readln (b);

         S:=0;

         For i:=1 to 10 do begin

        Writeln (‘введите а’) readln (a);

           If a>b then s:=s+1;

          End;

            Writeln (‘ количество чисел больших’,b,’ равно=’,s)

        End. 

        Б) найти порядковый номер того  из них, которое наиболее близко к какому- нибудь целому числу 

           Program primer;

           Var s,a: real; i:integer;

            Begin

           Min:=1; k:=0;

            For i:=1 to 10 do begin

           Readln (a);

           If abs(a – int(a))<min then begin

            Min:=abs(a – int(a)); k:=I;

             End;

             End;

            Writeln (k);

            End. 

2. Условный оператор  в теле цикла 

3.2.1. Вычислить к – количество точек с целочисленными координатами , попадающих в круг радиуса R с центром в начале координат. 

Program primer;

Uses crt;

Var x,y,r,k: integer;

  Begin clrscr;

K:=0;

Writeln (‘введите r’);

Readln (r);

For x= -r to r do

If x>2+y>2<r>2 then k:=k+1;

Writeln (k);

End. 

3.2.2. Определить, сколько из них большее своих соседей, т.е. предыдущего и последующего чисел. 

program primer;

uses crt;

var s,a1,a2,a3,a:real; i:integer;

begin clrscr;

readln (a1,a2,a3)

s:=0;

if (a2>a1) and (a2>a3) then s:=s+1;

for i:=4 to 10 do begin readln (a);

a1:=a2; a2:=a3; a3:=a;

if (a2>a1) and (a2>a3) then s:=s+1;

end;

writeln (s);

end. 

3.2.3. Найти порядковый номер того из них, которое наиболее близко к какому нибудь целому числу. 

Информация о работе Отчет учебной практики по основам алгоритмизации и программирования