Студопедия — Правила записи и использования
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Правила записи и использования






1. Отсутствие указанных в квадратных скобках элементов приводит к получению укороченного (неполного) оператора условного перехода.

2. В ветви «ДА» может быть один простой оператор или требуемое их количество, оформленное в виде одного составного оператора.

3. В ветви «НЕТ» должен быть только один простой (составной) оператор.

4. В каждой из ветвей возможно использование других операторов if для проверки дополнительных условий. В этом случае говорят о вложенных операторах if. При записи вложенных if рекомендуется для наглядности сдвигать их вправо от основного.

Рассмотренные операторы условной передачи управления позволяют выполнить программирование алгоритма (рис. 4.3), представленного двумя условно-линейными изображениями (рис. 4.4).

Анализ условно-линейных схем алгоритма и структур условных операторов позволяет сделать следующие выводы:

реализовать в программе вариант алгоритма, в котором после проверки условия расположена ветвь “НЕТ” позволяет только неполный оператор условного перехода;

программировать вариант алгоритма, в котором под проверкой условия располагается ветвь “ДА” возможно только с использованием полного оператора условного перехода.

С учётом изложенного выполним идентификацию переменных и составим программы решения задачи о нагрузках на основания.

Идентификация переменных представлена в табл. 4.

Таблица 4

Обозначения в алгоритме Vc Мкр L doc k1 p Mc F n
Обозначения в программе vc roc mkr l doc k1 PI mc f n

Составление программы по условно-линейной схеме варианта 1

Анализ первого варианта условно-линейной схемы, в которой под блоком проверки условия расположена ветвь «ДА», а затем ветвь «НЕТ», и структур полного и укороченного оператора if позволяет сделать вывод, что для программирования можно применять только полный if с аналогичным расположением ветвей.

Вариант программы может выглядеть следующим образом:

/* Задача 4.1. Простое ветвление. Полный if */

/* Разработал студент гр. А031 Степанов И.Г. */

#include <stdio.h> /* включающие */

#include <stdlib.h> /* директивы */

#include <math.h> /* препроцессора */

main()

{

float vc, roc, mkr, l, doc, k1, pi=3.1416, mc, f;

int n;

scanf(“%3f%5f%5f%4f%4f%4f”, &vc, &roc, &mkr, &l, &doc, &k1);

printf(“\n vc=%5.2f roc=%5.3f mkr=%5.2f l=%5.1f” “doc=%5.2f k1=%4.2f\n”, vc, roc, mkr, l, doc, k1);

mc=vc*roc;

if(mc<=mkr) /* полный вариант оператора if */

{

f=mc/pow(l*k1,2); /* операторы */

n=1; /* ветви “ДА” */

}

else

{

f=mc/(pi*pow(doc,2)/4.); /* операторы */

n=2; /* ветви “НЕТ” */

}

printf(“\n mc=%9.3f f=%9.3f n=%6d\n", mc, f, n);

}

15.0.96314.85296.2.650.01 – данные для проверки ветви 1

15.1.15014.85296.2.650.01 – данные для проверки ветви 2

15.0.98014.85296.2.650.01 – данные для расчёта

Несколько строк значений исходных данных при одном операторе ввода показывают необходимость последовательного троекратного выполнения программы. Это нужно для того, чтобы перед решением задачи с указанными в ней значениями, убедиться в работоспособности каждой из ветвей. Отладочные просчёты ведутся со специально подобранными значениями вводимых величин, как правило, граничными в заданном диапазоне. После отладки программы выполняется решение задачи с истинными исходными данными.

Первые две строки численных значений вводимых переменных позволяют провести отладку (проверку работоспособности) программы по каждой из ветвей. При roс=0.963 (первая строка), проверяемое условие выполняется и рассчитывается ветвь «ДА». Для roc=1.15 (вторая строка), условие не выполняется и решение должно пройти по ветви «НЕТ». Третья строка позволяет получить конкретные результаты для реально заданного значения плотности.

Составление программы по условно-линейной схеме варианта 2

Анализ второго варианта условно-линейной схемы, в которой под блоком проверки условия расположена ветвь «НЕТ», а затем ветвь «ДА», и структур полного и укороченного оператора if позволяет сделать вывод, что для программирования требуется применить структуру с использованием укороченного if и двух goto.

Вариант программы может иметь вид:

/* Задача 4.1. Простое ветвление. Неполный if */

/* Разработал студент гр. А031 Степанов И.Г. */

#include <stdio.h> /* включающие */

#include <stdlib.h> /* директивы */

#include <math.h> /* препроцессора */

main()

{

float vc, roc, mkr, l, doc, k1, pi=3.1416, mc, f;

int n;

scanf(“%3f%5f%5f%4f%4f%4f”, &vc, &roc, &mkr, &l, &doc, &k1);

printf(“\n vc=%5.2f roc=%5.3f mkr=%5.2f l=%5.1f”

“doc=%5.2f k1=%4.2f\n”, vc, roc, mkr, l, doc, k1);

mc=vc*roc;

if(mc<=mkr) goto M1; /*укороченный вариант оператора if*/

f=mc/(pi*pow(doc,2)/4.); /* операторы */

n=2; /* ветви “НЕТ” */

goto M2;

M1: f=mc/pow(l*k1,2); /* операторы */

n=1; /* ветви “ДА” */

M2:printf(“\n mc=%9.3f f=%9.3f n=%6d\n", mc, f, n);

}

15.0.96314.85296.2.650.01 – данные для проверки ветви 1

15.1.15014.85296.2.650.01 – данные для проверки ветви 2

15.0.98014.85296.2.650.01 – данные для расчёта

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







Дата добавления: 2015-10-02; просмотров: 307. Нарушение авторских прав; Мы поможем в написании вашей работы!



Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Тема: Кинематика поступательного и вращательного движения. 1. Твердое тело начинает вращаться вокруг оси Z с угловой скоростью, проекция которой изменяется со временем 1. Твердое тело начинает вращаться вокруг оси Z с угловой скоростью...

Условия приобретения статуса индивидуального предпринимателя. В соответствии с п. 1 ст. 23 ГК РФ гражданин вправе заниматься предпринимательской деятельностью без образования юридического лица с момента государственной регистрации в качестве индивидуального предпринимателя. Каковы же условия такой регистрации и...

Седалищно-прямокишечная ямка Седалищно-прямокишечная (анальная) ямка, fossa ischiorectalis (ischioanalis) – это парное углубление в области промежности, находящееся по бокам от конечного отдела прямой кишки и седалищных бугров, заполненное жировой клетчаткой, сосудами, нервами и...

Меры безопасности при обращении с оружием и боеприпасами 64. Получение (сдача) оружия и боеприпасов для проведения стрельб осуществляется в установленном порядке[1]. 65. Безопасность при проведении стрельб обеспечивается...

Весы настольные циферблатные Весы настольные циферблатные РН-10Ц13 (рис.3.1) выпускаются с наибольшими пределами взвешивания 2...

Хронометражно-табличная методика определения суточного расхода энергии студента Цель: познакомиться с хронометражно-табличным методом опреде­ления суточного расхода энергии...

Studopedia.info - Студопедия - 2014-2024 год . (0.007 сек.) русская версия | украинская версия