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

  • Приложение 1. Листинг программы задачи № 1, ЛР № 1 .var

  • Приложение 3. Листинг программы № 2, ЛР №1 var

  • Лаб1_Паскаль. Программир_Ту. Задача 1 звучит следующим образом Пусть дано натуральное число n. Составить программу вычисления n


    Скачать 143.02 Kb.
    НазваниеЗадача 1 звучит следующим образом Пусть дано натуральное число n. Составить программу вычисления n
    АнкорЛаб1_Паскаль
    Дата11.02.2023
    Размер143.02 Kb.
    Формат файлаdocx
    Имя файлаПрограммир_Ту.docx
    ТипЗадача
    #931005

    Содержание

    1.Введение 2

    2.Анализ задачи № 1 3

    3.Решение задачи № 1 3

    3.1. Описание используемых переменных, обоснование выбора типа данных 3

    3.2. Описание алгоритма 3

    4.Анализ задачи № 2 5

    4.1.Описание используемых переменных, обоснование выбора типа данных 5

    4.2.Описание алгоритма 5


    1. Введение


    В лабораторной работе № 1 создавались программы с использованием простых управляющих структур: условных операторов, циклов. В решаемых заданиях использовались простые типы данных, т.е. нет необходимости использовать массивы.

    В первой задаче использовались простой тип данных, а во второй – строковый.

    Выполнение работы происходило с использованием PascalABC.
    1. Анализ задачи № 1


    Задача № 1 звучит следующим образом: Пусть дано натуральное число n. Составить программу вычисления n3 как суммы нечетных чисел исходя из того, что: 13 = 1; 23 = 3 + 5; 33 = 7 + 9 + 11; 43 = 13 + 15 + 17 + 19; 53 = 21 + 23 + 25 + 27 + 29; …
    1. Решение задачи № 1

      1. Описание используемых переменных, обоснование выбора типа данных


    Из условий следует, что требуется составить программу с возможностью возведения числа n в куб (для этих целей будет применяться оператор power, а значит будет использоваться переменные типа real).

    При этом после её выполнения должно выводиться тождество числа n в кубе равно сумме чисел, из которых оно состоит и в формульном выражении получаемый ответ имеет вид: n3 = (n2 – (n – 1))n + (n2 – (n – 1))n + …

    Рассматривая получаемую формулу, можно увидеть необходимость использования оператора циклов while.
      1. Описание алгоритма


    Блок-схема представлена на рис 1.

    1. Изначально задаёмся количеством и типом используемых переменных (a, b, c, d :real);

    2. После задаём команду отображающую просьбу о вводе числа;

    3. Присваиваем переменным c, b, d первоначальные значения;

    4. Задаём оператор while, который необходим для проверки выполнения имеющегося условия d < c.

    5. На каждом этапе не забываем задавать оператор вывода, необходимый для формирования конечного ответа.

    6. После достижения невыполнения условия оператора while, программа выдает необходимый нам ответ.



    Рис. 1. Блок схема алгоритма получения тождества состоящего из куба задаваемого числа и его составных чисел согласно условиям.
    1. Анализ задачи № 2


    Условия задачи № 2 звучат следующим образом и содержат некоторые указания: Исключить из данной строки группы символов, расположенные между скобками ( , ). Сами скобки тоже должны быть исключены, а также предполагается, что внутри каждой пары скобок нет других скобок.
      1. Описание используемых переменных, обоснование выбора типа данных


    Использовались два типа переменных: string (для задания различных видов символов как буквенного вида, так и числового, а также различных знаков) и byte (так как использовалась функция pos).
      1. Описание алгоритма


    Для достижения поставленной цели были использованы три переменные с двумя типами данных. Блок-схема представлена на рис. 2.1.

    Последние две служили обозначением начала и конца цикла repeat, в котором был задан оператор удаления delete символов с первой до последней позиции.



    Рис. 2.1. Блок схема алгоритма удаления символов, находящихся в скобках.

    Приложение 1. Листинг программы задачи № 1, ЛР № 1.

    var a,b,c,d:real;

    begin

    writeln('Введите число a, которое хотите возвести в куб');

    readln(a);

    c:=power(a,2)-(a-1);

    b:=power(a,3);

    {использование power вместо sqr обусловлено возведением в куб}

    write(a,'^3=');

    d:=0;

    while ddo

    begin

    if dthen write(c,'+')

    else write(c);

    d:=d+c;

    c:=c+2;

    end;

    end.

    Приложение 2. Тестирование программы № 1, ЛР №1.



    Рис. 1.2. Пример работы программы задачи № 1, ЛР № 1.

    Приложение 3. Листинг программы № 2, ЛР №1

    var a:string;

    b1,b2:byte;

    begin

    writeln('Введите строку с группами символов, заключенных в круглые скобки');

    readln(a);

    repeat

    b1:=pos('(',a);

    b2:=pos(')',a);

    delete(a,b1,b2+1);

    until(b1=0)or(b2=0);

    writeln(a)

    end.

    Приложение 4. Тестирование программы № 2, ЛР №1.



    Рис. 2.2. Пример работы программы задачи № 1, ЛР № 1.


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