11723

Алгоритмизация и разработка программ разветвляющейся структуры с использованием условного оператора

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

Информатика, кибернетика и программирование

Лабораторная работа №9 Алгоритмизация и разработка программ разветвляющейся структуры с использованием условного оператора Цель занятия: 1.Освоение алгоритмов и программ разветвляющейся структуры. 2.Получение навыков в использовании условного оператор...

Русский

2013-04-10

70 KB

14 чел.

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

Алгоритмизация и разработка программ разветвляющейся структуры с использованием условного оператора

Цель занятия:

1.Освоение  алгоритмов  и  программ разветвляющейся структуры.

2.Получение навыков в использовании условного оператора в программе.

Вопросы для контроля

  1.  Дать определение алгоритма разветвляющейся структуры.
  2.  Каковы две формы записи условного оператора?
  3.  Приведите пример условного оператора.
  4.  В чем разница по смыслу между полной и краткой формами
  5.  записи условного оператора?
  6.  Может ли условный оператор содержать в себе другие условные
  7.  операторы?
  8.  Что такое оператор выбора? Форма записи оператора выбора?
  9.  Какие значения могут принимать Выражение и КонстантноеВыражение
  10.  оператора выбора?
  11.  Что такое условная операция? Пример.
  12.  В чем отличие условной операции от оператора условия?

Постановка  задания

        Составить алгоритм и программу  решения  математической задачи по

        вариантам, заданным преподавателем (таблица 9.1).

        

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

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

             2.Алгоритм задачи.

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

             4.Таблица данных и результатов.

             5.Анализ допущенных ошибок.

Порядок выполнения работы

1.Включить  ПК.

2.Загрузить систему Borland C++.

3.Выполнить задание.

    3.1.Создать новый файл.

    3.2.Ввести одну из программ  задания (варианты  заданий в таблице 6.1), отладить ее.

    3.3.Ввести по мере выполнения программы исходные данные.

       Примечание:

            данные набираются произвольно, в зависимости от условия,

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

            программы.

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

    3.5.Показать программу преподавателю.

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

4.Закончить работу с системой Borland C++ без сохранения программы.

Краткие теоретические сведения

Условный оператор

Форма записи:

if (выражение) Оператор-1; [else Оператор-2;]

Выполнение оператора if начинается с вычисления выражения.

Далее выполнение осуществляется по следующей схеме:

- если выражение истинно (т.е. отлично от 0), то выполняется оператор-1.

- если выражение ложно (т.е. равно 0),то выполняется оператор-2.

- если выражение ложно и отсутствует оператор-2 (в квадратные скобки заключена необязательная конструкция), то выполняется следующий за if оператор.

После выполнения оператора if значение передается на следующий оператор программы, если последовательность выполнения операторов программы не будет принудительно нарушена использованием операторов перехода.

Оператор выбора

Оператор switch предназначен для организации выбора из множества различных вариантов.  

Форма записи:

    switch ( выражение )

    {   [объявление]

             :

          [ case  КонстантноеВыражение1]: [ список-операторов1]

          [ case  КонстантноеВыражение2]: [ список-операторов2]

             :

             :

          [ default: [ список операторов ]]

    }

Выражение, следующее за ключевым словом switch в круглых скобках, может быть любым выражением, допустимыми в языке С++, значение которого должно быть целым. Отметим, что можно использовать явное приведение к целому типу, однако необходимо помнить о тех ограничениях и рекомендациях, о которых говорилось выше.

Значение этого выражения является ключевым для выбора из нескольких вариантов. Тело оператора switch состоит из нескольких операторов, помеченных ключевым словом Сase с последующим КонстантнымВыражением. Следует отметить, что использование целого константного выражения является существенным недостатком, присущим рассмотренному оператору.

Схема выполнения оператора switch следующая:

- вычисляется выражение в круглых скобках;

- вычисленные значения последовательно сравниваются с константными выражениями, следующими за ключевыми словами case;

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

- если ни одно из константных выражений не равно выражению, то управление передается на оператор, помеченный ключевым словом default, а в случае его отсутствия управление передается на следующий после switch оператор.

                       

Постановка задания

   Выполнить  задачи  по  вариантам,  заданным   преподавателем. Варианты заданий взять из таблицы 9.1.

                                                   Таблица 9.1.  

№ п.п.

Задание                    

Решить систему уравнений:

1

2

3

4

5

Пример выполнения работы

                  

Решить систему уравнений:

Программа

1-й способ

#include <stdio.h>

#include <math.h>

void main()

{

 float a,b,x,y;

     printf("Введите a,b,x\n");

     scanf("%f %f %f",&a,&b,&x);

      if (x>0) y=(a*a)/b+pow(x,3);

      if (x==0) y=fabs(a*x-b*5);

      if (x<0) y=sqrt((a-b)/(x*x));  

      printf("y= %.3f",y);

}

2-й способ

#include <stdio.h>

#include <math.h>

void main()

{

 float a,b,x,y;

     printf("Введите a,b,x\n");

     scanf("%f %f %f",&a,&b,&x);

      if (x>0) y=(a*a)/b+pow(x,3);

      else if (x==0) y=fabs(a*x-b*5);

                else y=sqrt((a-b)/(x*x));  

      printf("y= %.3f",y);

}

 

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

Алгоритм решения (блок - схема)

                 

                         

    Рис 9.1.Схема алгоритма.


начало

ведите a, b,x

Ввод а, b, x

x>0

y=(a*a)/b+pow(x,3);

да

нет

x=0

y=sqrt((a-b)/(x*x));

да

нет

Вывод y=

конец

y=fabs(a*x-b*5);


 

А также другие работы, которые могут Вас заинтересовать

6805. Пасивне мережеве обладнання 109 KB
  Мета роботи: дослідити принципи побудови та функціонування мереж типу Ethernet. Теоретична частина Загальні відомості. Ethernet був започаткований у 1970 році (Dr. Robert M. Metcalfe) в дослідницькому центрі фірми Xerox. Перша система Ethernet...
6806. Ограничения целостности в SQL Oracle 188.5 KB
  Ограничения целостности в SQL Oracle Цели лабораторной работы Изучить возможности SQL Oracle по описанию и поддержанию ограничений целостности. Приобрести практический опыт по описанию ограничений целостности. Теоретические о...
6807. Измерение сопротивления прямым и косвенным методами 68 KB
  Измерение сопротивления прямым и косвенным методами. Подготовка приборов к измерению сопротивления В7-26 Переключатель рода работ перевести в положение r и проверить нулевое положение указателя при замкнутых накоротко гнездах...
6808. Одержання тонкоплівкових структур термічним випаровуванням у вакуумі 66.5 KB
  Одержання тонкоплівкових структур термічним випаровуванням у вакуумі Ціль роботи: ознайомлення з методом осадження тонкоплівкових покриттів з пари речовини, що випаровується у вакуумі. Робота містить у собі одержання металевих плівок методом термічн...
6809. Базова VLAN Конфігурація 572 KB
  Базова VLAN Конфігурація Діаграма топології Таблиця адрес Пристрій (Ім'я хоста) Інтерфейс IP адрес Маска підмережі Шлюз по замовчуванню S1 VLAN 99 172.17.99.11 255.255.255.0 N/A S2 VLAN....
6810. Параметрична ідентифікація параметрів з використанням функцій чутливості 116.93 KB
  Параметрична ідентифікація параметрів з використанням функцій чутливості. Для математичної моделі коливання трьох мас, які поєднані між собою пружинами з відповідними жорсткостями, і відомої функції спостереження координат моделі потрі...
6811. Data manipulation in SQL Oracle 110 KB
  Data manipulation in SQL Oracle Purpose of the lab To study SQL Oracle possibilities in inserting, updating and deleting rows in a tables. To acquire practical skills in inserting, updating and deleting rows in a tables by using SQ...
6812. Манипулирование данными в SQL Oracle 121 KB
  Манипулирование данными в SQLOracle Цели лабораторной работы Изучить возможности SQL Oracle по вставке, обновлению и удалению строк в таблице. Приобрести практический опыт по вставке, обновлению и удалению строк в таблице с и...
6813. Опрацювання текстової інформації в MS-Word. Форматування та друк тексту 421 KB
  Опрацювання текстової інформації в MS-Word. Форматування та друк тексту Мета: удосконалити навички щодо створення та збереження документів та їх копій у текстовому редакторі Word, навички щодо редагування і форматування тестів. Теоретичні відомості ...