Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Условный оператор в языке С
Цель работы Целью лабораторной работы является получение практических навыков в работе с условным оператором и разветвленными алгоритмами в языке C. Темы для предварительной проработки
Задания для выполнения Построить программу, которая вводит координаты точки (x, y) и определяет, попадает ли точка в заштрихованную область на рисунке, который соответствует Вашему варианту. Попадание на границу области считать попаданием в область. Варианты индивидуальных заданий
Пример решения задачи (вариант 30) Разработка алгоритма решения.
Уравнение этой прямой: Уравнение окружности: Для проверки попадания точки в заданную область нужно проверить условия того, что: Схема алгоритма приведена на рисунке ниже. Определение переменных программы Для реализации алгоритма нам будут нужны только переменные для хранения значений координат x и y. В условиях задания не приведены требования к точности вычислений, рисунок представлен с довольно невысокой точностью, поэтому для этих переменных было бы достаточно типа float. Но в соответствии с общим стилем программирования на C выберем для них тип double. Разработка текста программы Текст программы начинается с включения фала: #include <stdio.h> т.к. нам обязательно понадобятся функции стандартного ввода-вывода, которые описаны в этом файле. Далее идет заголовок и открытие главной функции: int main(void) { и объявление переменных, определенных в пункте 5.2. double x, y; Для каждой координаты выводится приглашение на ее ввод и вводится ее значение: printf("Введите координату x >"); scanf("%lf",&x); printf("Введите координату y >"); scanf("%lf",&y); Введенные значения координат выводятся на экран: printf("x=%6.3lf; y=%6.3lf\n",x,y); Далее идет проверка условий попадания точки в область. Оба условия проверяются одним выражением. Поскольку точка попадает в область, если выполняются оба условия вместе, условия в выражении соединены операцией "логическое И": if ( (y>=1-x)&& (x*x+y*y<=1) ) Если значение логического выражения в условном операторе истинно, то выводится сообщение про попадание: printf("Точка попадает в область\n"); В противном случае выводится сообщение про попадание: else printf("Точка не попадает в область\n"); Полный текст программы приведен ниже. /****************************************************/ /* Лабораторная работа №3 */ /* Условный оператор */ /* Пример выполнение. Вариант №30. */ /****************************************************/ #include <stdio.h> int main(void) { double x, y; /* координаты точки */ /* ввод координат */ printf("Введите координату x >"); scanf("%lf",&x); printf("Введите координату y >"); scanf("%lf",&y); /* вывод только что введенных значений */ printf("x=%6.3lf; y=%6.3lf\n",x,y); /* проверка условий */ if ( (y>=1-x) && (x*x+y*y<=1) ) printf("Точка попадает в область\n"); else printf("Точка не попадает в область\n"); return 0; } Отладка программы Самое важное в отладке этой программы - убедиться в том, что программа выдает правильные результаты при разных комбинациях входных данных. Следовательно, необходимо подобрать такие комбинации, которые были бы показательными для разных случаев размещения точки. Мы предлагаем такие комбинации: |
||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2018-05-10; просмотров: 341. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |