Главная страница
Навигация по странице:

  • Program

  • Задача 5 (индивидуальное задание).

  • Работу выполнил: студент ФИОП, Группы ПМа-о21, Пятибратов Артем Романович Работу принял: Доцент, к.т.н.

  • отчет 11. Лабораторная работа 11. Программирование циклов Подготовил студент 1го курса фиоп, Группы пмао21


    Скачать 318.11 Kb.
    НазваниеЛабораторная работа 11. Программирование циклов Подготовил студент 1го курса фиоп, Группы пмао21
    Дата12.02.2022
    Размер318.11 Kb.
    Формат файлаdocx
    Имя файлаотчет 11.docx
    ТипЛабораторная работа
    #359571

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

    Программирование циклов

    Подготовил студент 1-го курса

    ФИОП, Группы ПМа-о21

    Пятибратов Артем Романович

    Цель работы:

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

    Постановка задачи:

    1. Изучить следующие вопросы применительно к языку программирования Pascal в системе программирования PascalABC.NET:

    - алгоритмы циклической структуры;

    - синтаксис оператора цикла с предусловием;

    - синтаксис оператора цикла с постусловием;

    - синтаксис оператора цикла с параметром;

    - особенности применения операторов цикла в программах на языке

    Pascal;

    - особенности составления блок-схем алгоритмов циклической структуры.

    Выполнение работы:

    Составить программу на языке Pascal (с использованием оператора цикла с предусловием) и блок-схему алгоритма (блок-схема должна соответствовать программе) для решения следующей задачи.

    Объём выпуска продукции на предприятии задается функцией

    y (1 1 1) et 21 1t 1 1t2

    Вычислить объёмы выпуска продукции в разные моменты времени t, где время t изменяется от начального момента tн до конечного момента tк с шагом по времени t.

    Вывести результаты, включающие 1+5=6 знаков, из них 1+2=3 цифр после запятой, где числа p и q находятся из условия N pq , где N – номер студен- та по списку. Все величины в задаче считать действительными (дробными, вещественными) числами. Также вывести пояснительный текст при вводе и выводе (в этой и последующих задачах). Числа p и q подставляются в форму- лу, задающую изменение объема выпуска, до составления программы и блок- схемы.

    Переменные tн, tк и t рассматривать как исходные данные. Их значения вычислить вручную до запуска программы на выполнение по формулам:

    tн 1 1=2,

    tк 11 2=4 ,

    Δt

    Код программы на языке Pascal для решения задачи 1 может быть таким.

    program lab11_1;

    var

    y, t, tn, tk, dt: real;

    begin

    writeln('Введи tn,tk,dt');

    read(tn,tk,dt);

    t := tn;

    while t <= tk do

    begin

    y :=3*exp(t) + 4*t + 2*t*t;

    writeln ('в момент времени t = ', t:6:3, ' y = ', y:6:3);

    t += dt;

    end;

    end.




    Начало
    Блок-схема алгоритма


    да

    Конец



    Вывод t, y

    y 3et 4t +2t2



    t=

    Ввод









    нет






    Задача 2.

    Составить программу на языке Pascal (с использованием оператора цикла с постусловием) и блок-схему алгоритма (блок-схема должна соответствовать программе) для вычисления объема выпуска, задаваемых условиями

    задачи 1.

    Код программы на языке Pascal для решения рассматриваемой задачи может быть таким:

    Program Lab11_2;

    Var

    t,y,tn,tk,dt:real;

    Begin

    Writeln('Введи tn,tk,dt');

    read(tn,tk,dt);

    t:=tn;

    repeat

    y:=3*exp(t) + 4*t + 2*t*t;

    writeln(' при t = ', t:6:3, ' y = ', y:6:3);

    t:=t+dt

    until t>tk

    end.




    Начало
    Блок-схема алгоритма


    t=

    Ввод











    y 3et 4t +2t2





    Вывод t, y







    нет





    да





    Конец


    Задача 3.

    Составить программу на языке Pascal (с использованием оператора цикла с параметром) и блок-схему алгоритма (блок-схема должна соответствовать программе) для вычисления объема выпуска, задаваемых условиями задачи 1.

    Код программы на языке Pascal для решения рассматриваемой задачи может быть таким.

    Program Lab11_3;

    Var

    t,y,tn,tk,dt:real;

    i,n:integer;

    Begin

    writeln('Введи tn,tk,dt');

    read(tn,tk,dt);

    n:=trunc(1+(tk-tn)/dt);

    t:=tn;

    for i:=1 to n do

    begin

    y:=3*exp(t) + 4*t + 2*t*t;

    writeln(' при t = ', t:6:3, ' y = ', y:6:3);

    t:=t+dt

    end;

    End.



    Блок-схема алгоритма:


    Начало



    да

    Конец



    Вывод t, y

    y 3et 4t +2t2

    Ввод



    t=







    нет










    Задача 4.

    Составить программу на языке Pascal (без использования операторов цикла, но с использованием оператора безусловного перехода) и блок-схему алгоритма (блок-схема должна соответствовать программе для вычисления объема выпуска, задаваемых условиями задачи 1.

    Код программы на языке Pascal для решения рассматриваемой задачи может быть таким (используется раздел описания меток Label):

    Program Lab11_4;

    Label 10;

    Var

    t,y,tn,tk,dt:real;

    Begin

    Writeln('Введи tn,tk,dt');

    read(tn,tk,dt);

    t:=tn;

    10: y:=3*exp(t) + 4*t + 2*t*t;

    writeln(' при t = ', t:6:3, ' y = ', y:6:3);

    t:=t+dt;

    if t<=tk then goto 10;

    end.




    Начало
    Блок-схема алгоритма


    t=

    Ввод





    y 3et 4t +2t2





    Вывод t, y











    да





    нет



    Конец


    Задача 5 (индивидуальное задание).

    Составить программу на языке Pascal и блок-схему алгоритма (блок-схема должна соответствовать программе) для решения задачи по своему варианту из табл. 1. Вариант соответствует номеру студента по списку группы (если номер студента по списку превышает 30, то для 31-го студента вариант 1, для 32-го – вариант 2 и т.д.).



    Код программы на языке Pascal для решения рассматриваемой задачи может быть таким (используется раздел описания меток Label):

    Program Lab11_5;

    Var

    an,ak,da,a,y,nu,x,n,m:real;

    begin

    Writeln('Введи an,ak,da,nu,x,n,m');

    read(an,ak,da,nu,x,n,m);

    a:=an;

    while a<=ak do

    begin

    if a>y then y:=a*Cos(Power(n,m))/nu else

    if a=y then y:=a*x+Cos(Exp(sqr(pi))) else

    y:=a*5*Exp(2)+2/Sin(x);

    Writeln(' при t = ', a:6:3,' y = ', y:6:3);

    a:=a+da;

    end;

    end.




    Блок-схема алгоритма:


    Начало





    Ввод



    нет

    Да

    Да

    нет

    Да

    Конец









    a=y

    a>y

    a=





    нет

















    Вывод а, у





    конец


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

    Работу выполнил:

    студент ФИОП, Группы ПМа-о21,

    Пятибратов Артем Романович

    Работу принял:

    Доцент, к.т.н.

    Косиченко Михаил Юрьевич


    написать администратору сайта