Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Программирование разветвленных алгоритмов.Содержание книги
Поиск на нашем сайте
Операторы передачи управления
Структура условного оператора передачи управления: if (<выражение>) <оператор 1> else <оператор 2>; (Если) (иначе) - ключевые слова, где <условие> - это произвольное выражение логического типа, которое может принимать два значения: истина (TRUE) и ложь (FALSE); <оператор> - любой оператор языка СИ, заканчивается точкой с запятой. Сокращенная форма условного оператора: if (<выражение>) <оператор>; Оператор безусловного перехода: goto <идентификатор-метка>; Меткой является идентификатор. Метка размещается перед оператором С/С++, к которому выполняется переход и отделяется двоеточием (:). Пример 1. Составить программу для начисления базовой зарплаты согласно следующему правилу: если стаж работы сотрудника менее трех лет, то зарплата равна 100$, при стаже работы от трех до 5 лет - 150$, свыше 5 лет зарплата повышается с каждым годом на 10$, причем при стаже, превышающем 20 лет, она составляет 300$. Для программирования решения этой задачи определим математическую формулировку задачи: 100, если ST < 3; ZP= 150, если 3 ≤ST £ 5; 150+ (ST -5)*10, если 5 < ST≤ 20; 300, если ST > 20; где ZP - зарплата, ST - стаж работы. Далее построим СА (рис.2,а), ей соответствует следующая программа: #include <stdio.h> #include <conio.h> Void main () { int ST; // ST - стаж (байтовый (целый) тип беззнаковый) float ZP; // ZP - зарплата (плавающий тип) printf ("\n Введите стаж "); scanf ("%d",&ST); if (ST<3) ZP = 100; else if (ST<5) ZP = 150; else if (ST>=20) ZP=300; else ZP=150+(ST- 5)*10; printf ("\n Зарплата = %10.2f$\n",ZP); getch(); } Оператор выбора switch позволяет в зависимости от значения какой-либо переменной или выражения (ключа выбора) выполнить те или иные операторы, помеченные соответствующими константами. Структура оператора: switch (<выражение>) { case<константа 1>: <группа операторов 1>; case <константа 2>: <группа операторов 2>; ... case <константа N>: <группа операторов N> default: <операторы>; где <выражение> - выражение (переменная) любого порядкового типа; <константа> - константа того же типа, что и <выражение>; <оператор> - произвольный оператор C/C++.
Пример 2.Напечатать в зависимости от числа углов название фигуры (треугольник, четырехугольник, пятиугольник, шестиугольник, многоугольник). Вариант реализации задачи с применением оператора выбора представлен СА (рис.2,б) и следующей программой: #include <stdio.h> #include <conio.h> Void main () { int T; // T – число углов clrscr(); // очистка экрана printf ("Введите число углов "); scanf ("%d",&T); Switch (T) { case 1: case 2: printf ("Это не фигура\n "); break; case 3: printf ("С %d углами - треугольник\n ", T); break; case 4: printf ("С %d углами - четырехугольник\n ", T); break; case 5: printf ("С %d углами - пятиугольник\n ", T); break; case 6: printf ("С %d углами - шестиугольник\n ", T); break; default: printf ("С %d углами - многоугольник\n ", T); } getch(); } Задание 1 (программа 2_1) Вычислить значение функции в зависимости от интервала, в который попадает вводимый с клавиатуры аргумент:
1. Для t [0,3], a t2 ln t при 1 , где a=-0.5,b=2 z = 1 при t<1, e a t cos b t при t>2,
2. Для x [0,4], при x>2, где а=2.3 f = х при 0.3< x £ 2, cos(x-a) при x ,
3. Для x [0,7], (a+b)/(ex+cosx) при 0 £ x<2.3, где a=-2.7,b=-0.27 z = (a+b)/(x+1) при 2.3£ x<5, ex+sinx при 7 ,
4. Для i [7,12], a i4 + b i при i< 10, где a=2.2,b=0.3. y = tg(i + 0.5) при i = 10, e2i + при i >10,
5. Для x [0.9,5], x2 - 7/x2 при x<1.3, где a=1.5 y = ax3 + 7 при 1.3 £ x<3, lg(x + 7 ) при x ,
6. Для t [-1.4], при t<0.1, где a=2.1,b=0.37. z = at + b при 0.1£ t< 2, при t , 7. Для x [0,6], a esin x +2.5 при x<0.3, где a=1.5. y = ecos x + a при 0.3£ x<4,
(sin x)/ (a + ex) при x ³ 4, 8. Для x [1,2], y = a/x + b x2 - c при x , где a=1.8,b=-0.5, c=3.5 (a + bx)/ при x>1.2,
9. Для t [1,5], t при t>a, где a=2.5 z = t sin a t при t=a, e-at cos a t при t<a, 10. Для x [0,4], e-bx sin b x при x<2.3, где a=1,b=3. y= сos bx при 2.3 , e-ax cos b x при x
11. Для t [0.5,3], a t2 – b при t<a, где a=1.3,b=6.5 z= a - b при a a t2/3 - при t>b, 12. Для x [0,2], |e-2x sin bx| при x >1, где b=-2.9 y = cos bx при x = 1, e-x cos bx при x < 1, 13. Для x [0.5,2] sin (cos a x) при x >1, где a=-0.8 z = tg ax при x = 1, a2 x при x < 1,
14. Для x [1,2], ln bx - 1/(bx+1) при x < 1.3, где b=1.3. y = bx + 1 при 1.3 ³ x ³ 1.7, ln bx +1/(bx+1) при x > 1.7, 15. Для x [-1,1], ax2+bx2/3 при x<0.1, где a=2.5,b=-0.9. z= a x2 при x=0.1, b x2/3 при x>0.1.
16. Ввести координаты точки (x, y). Напечатать, в каком квадранте или на какой оси координат находится эта точка. 17. Ввести радиусы R1, R2 и высоту. Вычислить объем усеченного конуса: , где S- площадь оснований. Если R1 = R2 - объем и площадь цилиндра, если R1 = 0 или R2 = 0 - объем (hπr2) и площадь πr() поверхности конуса. 18. Ввести с клавиатуры цифру. Определить, какой системе счисления она может принадлежать. 19. Ввести число. Определить, делится ли оно нацело на два, три или пять. 20. Ввести a, b, h. Если h=0, вычислить площадь прямоугольника; при a = b, найти площадь квадрата; в противном случае подсчитать площадь трапеции. Задание 2 (программа 2_2) 1. Определить остаток от деления на восемь введенного числа х и написать восьмиричную цифру прописью. 2. По цифре, введенной с клавиатуры, напечатать название этой цифры. 3. С клавиатуры ввести число k (1..30). Определить, какому дню недели оно соответствует, если первое число - понедельник. 4. Ввести число и номер месяца. Напечатать дату прописью. 5. Идет k секунда суток. Вычислить, сколько прошло часов и полных минут к этому моменту, при этом согласовать со значением слова (час, часа, часов, минута, минуты, минут). 6. В зависимости от номера (N) типа фигуры, организовать ввод необходимых данных и вычислить при N = 1 - площадь круга, N = 2 - объем шара (4/3πR3), N=3 -объем цилиндра, N = 4 - площадь поверхности сферы 4πr2. 7. Ввести число N (0 ≤ N ≤ 15). Определить и напечатать шестнадцатеричную цифру, ему соответствующую. 8. Для целого числа К (1…99) напечатать фразу «Мне К лет», при определенных значениях К слово «лет» заменить словом «год» или «года». 9. В зависимости от номера (N) типа фигуры, организовать ввод необходимых данных и вычислить при N = 1 - площадь прямоугольника, при N=2 - площадь параллелограмма, при N = 3 - площадь трапеции 1/2(a+b)h. В последнем случае напечатать: является ли трапеция параллелограммом или ромбом. 10. Перевести число 0 ≤ х ≤ 31 в шестнадцатеричную систему счисления. 11. Напечатать прописью остаток от деления любого целого числа на пять. 12. По введенному номеру напечатать нужный цвет в радуге. 13. Спроектируйте программу, которая показывает, что, если сумма цифр двузначного числа кратна трем, то и само число делится на три без остатка. 14. Разработайте программу, которая доказывает, что квадрат двузначного числа k5 (последняя цифра - 5), равен k * (k + 1) * 100 + 25 (т.е. может быть получен умножением старшей цифры k на следующую по порядку и припиской «25»). Например, 35 * 11 = 3*4*100 + 25. Для задания 2 номер варианта определяется остатком от деления индивидуалного варианта на число 12. Лабораторная работа 3
|
||||||||||||||||
Последнее изменение этой страницы: 2021-07-18; просмотров: 165; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.16.40 (0.006 с.) |