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

  • Содержание работы. Основные понятия.

  • Пример задачи. Исходные данные

  • Задания к практической работе.

  • Оборудование (приборы, материалы, дидактическое обеспечение)

  • Компьютерные программы

  • Порядок выполнения задания, методические указания

  • Содержание отчета

  • Тема занятия

  • Практическая работа. Практическая работа №1. Тема Создание программ с разветвляющимися алгоритмами


    Скачать 315 Kb.
    НазваниеТема Создание программ с разветвляющимися алгоритмами
    АнкорПрактическая работа
    Дата01.06.2022
    Размер315 Kb.
    Формат файлаdoc
    Имя файлаПрактическая работа №1.doc
    ТипПрактическая работа
    #562517


    Практическая работа

    Тема: Создание программ с разветвляющимися алгоритмами

    Цель работы: Изучить структуру условного, составного операторов языка Pascal,

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

    Содержание работы.

    Основные понятия.

    1 Разветвляющимся называется такой алгоритм, в котором выбирается один из

    нескольких

    возможных

    вариантов

    вычислительного

    процесса.

    Каждый

    подобный

    путь

    называется ветвью алгоритма.

    2 Признаком разветвляющегося алгоритма является наличие операций проверки

    условия. Различают два вида условий - простые и составные.

    3 Простым условием (отношением) называется выражение, составленное из двух

    арифметических

    выражений

    или

    двух

    текстовых

    величин

    (иначе

    их

    еще

    называют

    операндами), связанных одним из знаков:

    < ‒ меньше, чем...

    > ‒ больше, чем...

    <= ‒ меньше, чем... или равно

    >= ‒ больше, чем... или равно

    <> ‒ не равно

    = ‒ равно

    4 Составное условие - объединение нескольких условий в одну группу.

    5

    В

    блок-схемах

    разветвленные

    алгоритмы

    изображаются

    так,

    как

    показано

    на

    рисунках

    6

    В

    качестве

    условного

    оператора

    используется

    конструкция if-else или

    ее

    сокращенный вариант if. Также существует оператор выбора case, который имеет более

    специфичное применение.


    7 Когда выполнение основной ветки программы доходит до условного оператора if-

    else, то в зависимости от результата логического выражения в его заголовке выполняются

    разные блоки кода. Если логическое выражение вернуло true, то выполняется один блок (в

    Паскале начинается со слова then), если false – то другой (начинается со слова else). После

    выполнения одного из вложенных блоков кода, ход программы возвращается в основную

    ветку. Другой вложенный блок не выполняется.

    8

    Непосредственно

    после then может

    стоять

    только

    один

    оператор.

    При

    необходимости

    выполнения

    нескольких

    операторов

    они

    должны

    быть

    заключены

    в

    операторные скобки begin-end. Пример программы, которая меняет значения переменных

    местами, только если эти значения различны. Блок if содержит четыре выражения, поэтому

    заключен в begin-end.

    9 Допустимо вложение одного оператора if (или if-else) в другой. При этом следует

    соблюдать

    осторожность,

    т.е.

    бывает

    трудно

    определить

    какому if (внешнему

    или

    внутреннему)

    принадлежит

    ветка else.

    Рекомендуют

    использовать

    вложенную

    конструкцию if, только в ветке else. К тому же в языке Паскаль действует следующее

    правило: каждому then соответствует ближайшее else, не задействованное при установлении

    соответствия с другим then.

    Задание

    1

    Составить

    и

    записать

    алгоритм

    решения

    задачи

    в

    графическом

    и

    словесно-

    формульном виде

    2 Написать программу на языке Паскаль

    3 Ввести программу и запустить еѐ на исполнение.

    4 Протестировать алгоритм с различными данными.

    5 Отладить программу (найти и исправить возможные ошибки).

    6 Проанализировать программу и сделать вывод.

    Пример задачи.

    Исходные данные:

    Дано четырехзначное число. Проверить истинность высказывания: «Данное число

    читается одинаково слева направо и справа налево».

    Решение:

    Для

    того,

    чтобы

    число

    читалось

    одинаково

    слева

    направо

    и

    наоборот,

    должны

    совпадать первая и четвертая цифры, а также вторая и третья. Необходимо выделить цифры

    из числа для сравнения, например

    2592 = 2000 + 500 + 90 + 2 = 2 · 1000 + 5 · 100 + 9 · 10 + 2


    В общем виде исходное число tcde = t · 1000 + c · 100 + d · 10 + e, тогда

    t

    div

    tcde

    c

    div

    tcde

    t

    *

    10

    100

    1000







    d

    c

    t

    tcde

    e

    c

    t

    div

    tcde

    d

    *

    10

    *

    100

    *

    1000

    *

    10

    *

    100

    10















    1 Алгоритм в графическом и словесном виде:

    1. Начало;

    2. Ввод (tcde);

    d

    c

    t

    tcde

    e

    c

    t

    div

    tcde

    d

    t

    div

    tcde

    c

    div

    tcde

    t

    *

    10

    *

    100

    *

    1000

    .

    6

    ;

    *

    10

    *

    100

    10

    .

    5

    ;

    *

    10

    100

    .

    4

    ;

    1000

    .

    3





















    7. Если t = e то

    {Если c = d то

    вывод («число читается

    одинаково»);}

    Иначевывод («число не

    читается одинаково»);

    8. Конец.

    2 Программа на языке Паскаль:

    program vibor;

    var Tcde, T, C, D, E:integer;

    begin

    write(‘Введите четырехзначное число ’);

    readln(Tcde);

    T := Tcde div 1000;

    C := Tcde div 100-T*10;

    D := Tcde div 10-T*100-C*10;

    E := Tcde-T*1000-C*100-D*10;

    if T=E then

    begin

    if C=D then

    Начало

    Ввод (tcde);

    d

    c

    t

    tcde

    e

    c

    t

    div

    tcde

    d

    t

    div

    tcde

    c

    div

    tcde

    t

    *

    10

    *

    100

    *

    1000

    ;

    *

    10

    *

    100

    10

    ;

    *

    10

    100

    ;

    1000





















    Вывод («число

    читается

    одинаково»)

    Конец

    t = e

    с = d

    Вывод («число не

    читается

    одинаково»)

    да

    да

    нет

    нет


    writeln(‘число читается одинаково’);

    end

    else writeln(‘число не читается одинаково’);

    end.

    3 Программный код для запуска

    4

    Тестирование

    программы

    с

    различными

    данными:

    5 Программа выдает неверный результат при неправильном вводе данных, новый код:

    program vibor;

    label m1;

    var Tcde, T, C, D, E:integer;

    begin

    m1:

    write(‘Введите четырехзначное число ’);

    readln(Tcde);

    if Tcde div 1000=0 then

    begin

    write(‘Число задано неверно ’);

    goto m1;

    end

    T := Tcde div 1000;

    C := Tcde div 100-T*10;

    D := Tcde div 10-T*100-C*10;

    E := Tcde-T*1000-C*100-D*10;

    if T=E then

    begin

    if C=D then

    writeln(‘число читается одинаково’);

    end


    else writeln(‘число не читается одинаково’);

    end.

    6

    Вывод:

    Программа,

    осуществляющая

    алгоритм,

    работает

    правильно,

    но

    если

    пользователь неправильно ввел четырехзначное число, ответ выдает неверный, необходимо

    добавить проверку исходного числа.




    Задания к практической работе.

    1 Даны числа x, y. Проверить истинность высказывания: «Точка с координатами (x ,

    y ) лежит во второй координатной четверти».

    2 Даны числа x , y . Проверить истинность высказывания: «Точка с координатами (x ,

    y ) лежит в четвертой координатной четверти».

    3 Даны числа x , y . Проверить истинность высказывания: «Точка с координатами (x ,

    y ) лежит во второй или третьей координатной четверти».

    4 Даны числа x , y . Проверить истинность высказывания: «Точка с координатами (x ,

    y ) лежит в первой или третьей координатной четверти».

    5 Даны два целых числа: A, B. Проверить истинность высказывания: «Справедливы

    неравенства A > 2 и B < 3».

    6 Даны два целых числа: A,

    B.

    Проверить истинность высказывания: «Справедливы

    неравенства A > 0 или B < —2».

    7 Даны три целых числа: A,

    B,

    C.

    Проверить истинность высказывания: «Справедливо

    двойное неравенство A < B < C».

    8 Даны три целых числа: A, B, C. Проверить истинность высказывания: «Число B

    находится между числами Aи C».

    9 Даны три целых числа: A, B, C. Проверить истинность высказывания: «Каждое из

    чисел A, B, C положительное».

    10 Даны три целых числа: A, B, C. Проверить истинность высказывания: «Хотя бы

    одно из чисел A, B, Cположительное».

    11 Даны три целых числа: A, B, C. Проверить истинность высказывания: «Ровно

    одно из чисел A, B, Cположительное».

    12 Даны три целых числа: A, B, C. Проверить истинность высказывания: «Ровно два

    из чисел A, B, Cявляются положительными».

    13 Проверить истинность высказывания: «Среди трех данных целых чисел есть хотя

    бы одна пара совпадающих».

    14 Проверить истинность высказывания: «Среди трех данных целых чисел есть хотя

    бы одна пара взаимно противоположных».

    15

    Дано

    трехзначное

    число.

    Проверить

    истинность

    высказывания:

    «Все

    цифры

    данного числа различны».


    16 Дано трехзначное число. Проверить истинность высказывания: «Цифры данного

    числа образуют возрастающую последовательность».

    17 Дано трехзначное число. Проверить истинность высказывания: «Цифры данного

    числа образуют убывающую последовательность».

    18 Дано целое число. Если оно является положительным, то прибавить к нему 1; если

    отрицательным, то вычесть из него 2; если нулевым, то заменить его на 10. Вывести

    полученное число.

    19 Даны три целых числа. Найти количество положительных чисел в исходном

    наборе.

    20 Даны три целых числа. Найти количество отрицательных чисел в исходном наборе.

    21 Даны два числа. Если их значения не равны, то присвоить каждому сумму этих

    значений, а если равны, то присвоить числам нулевые значения. Вывести новые значения A

    и B .

    22 Даны два числа. Если их значения не равны, то присвоить каждому большее из

    этих

    значений,

    а

    если

    равны,

    то

    присвоить

    числам

    нулевые

    значения.

    Вывести

    новые

    значения A и B.

    23 Даны три числа. Найти наименьшее из них.

    24 Даны три числа. Найти среднее из них (то есть число, расположенное между

    наименьшим и наибольшим).

    24 Даны три числа. Вывести вначале наименьшее, а затем наибольшее из данных

    чисел.

    25 Даны три числа. Найти наибольшее из них.





    разветвляющийся алгоритм?

    3 Какие бывают условия?

    4

    языке Паскаль

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

    ,

    условия на языке Паскаль

    Оборудование (приборы, материалы, дидактическое обеспечение): методические

    рекомендации к выполнению работы; задание и инструкционная карта для проведения

    практического занятия

    Компьютерные программы: FreePascalIDE, MsWord

    Теория: Для выполнения заданий по данной теме необходимо предварительно

    изучить теоретические материалы, а также методические рекомендации к выполнению

    работы

    Порядок

    выполнения

    задания,

    методические

    указания:

    ознакомиться

    с

    теоретическими положениями по данной теме; - изучить схему решения задач; - выполнить

    задания практической работы; - сформулировать вывод

    Содержание отчета: отчет по практической работе должен содержать: программные коды

    решения задач, ответ; вывод по работе

    Контрольные

    вопросы:

    1

    Способы

    представления

    алгоритма

    2

    Что

    такое

    4 Что такое составное условие? 5 Как в блок-схемах изображаются ветвления?


    6 Какие операторы

    в

    языке

    Паскаль

    используются

    для

    проверки

    условия?


    7

    Как

    Работает оператор условия?


    8 Как выполняется проверка условия в неполном условном операторе?

    9Как выполняется проверка условия во вложенных условных операторах?




    ИНСТРУКЦИОННАЯ КАРТА

    для проведения практической работы

    Тема занятия: создание программ с разветвляющимися алгоритмами

    Цель выполнения задания: изучить структуру условного, составного операторов

    языка Pascal, научиться создавать программы, используя полученные знания

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

    ,





    -


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