Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Программирование разветвляющихся алгоритмов (оператор if).Содержание книги
Поиск на нашем сайте
Условный оператор if аналогичен условным операторам других языков программирования и может использоваться в сокращенной и полной формах, которым соответствуют схемы: if (условие) оператор; if (условие) оператор_1; else оператор_2; В сокращенной форме условного оператора вычисляется выражение-условие и, если его значение отлично от нуля, выполняется следующий за условием оператор, в противном случае не производится никаких действий. В полной форме условного оператора при ненулевом значении выражения-условия выполняется оператор_1 с последующим переходом к следующему оператору программы, а при нулевом значении выражения-условия выполняется оператор_2 с переходом к следующему оператору программы.
Задача 10. Ввести трёхзначное число а и определить, делится ли оно без остатка на сумму своих цифр. Результат вывести на экран. #include <iostream.h> #include <conio.h> #include <math.h> int main() { int a, z1, z2, z3; cout<<"Введи трёхзначное число "; cin>>a; //Ввод числа z3=a%10; // последняя цифра z1=a/100; // первая цифра z2=a/10%10; // средняя цифра if (a%(z1+z2+z3)==0) cout<<"Результат деления = "<<a/(z1+z2+z3); Else cout<<"Не делится"; getch(); return 0; } Задача 11. Приведем более представительный пример. Слелующая программа распознает, какая из клавиш была нажата: латинская или русская буква, или цифра). // Программа отлажена в Visual Studio 2008 // Raspozn_Bukw.cpp: Распознаватель букв и цифр // в частности - распознает русские и выводит их #include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; int main() { unsigned char ch; wcout.imbue (locale("rus_rus.866")); m1: { wcout<<L"\nВведи символ "; ch=_getch(); if(ch >= '0' && ch <= '9') wcout<<(char)ch<<L"-Это цифра"<<endl; else if(ch >= 'A' && ch <= 'Z' ||ch >= 'a' && ch <= 'z') wcout<<(char)ch<<L"-Это латинская буква"<<endl; else if(ch >= 128 && ch <= 159 // А..Я || ch >= 160 && ch <= 175 // а..п || ch >= 224 && ch <= 241) // р..ё wcout<<(char)ch<<L"-Это русская буква"<<endl; else wcout<<(char)ch<<L"Не знаю..."<<endl; wcout<<L"\nПродолжать(y/n)?"; ch=_getch(); } if(ch!= 'n' && ch!= 'N') goto m1; return 0; }
Задача 12. Врачи советуют контролировать собственный вес Вашего тела, руководствуясь значением так называемого индекса массы: k =, где m — вес тела в кг, h — рост в метрах. Если k <= 27, то всё в норме; если 27 < k <= 30, то имеет место ожирение; если же k > 30, то требуется лечение от ожирения. Составить программу, которая вводит по запросу Ваш вес и рост, а затем выводит на экран соответствующий результат тестирования. Ввод и вывод в стиле языка С. #include <stdio.h> #include <conio.h> int main() { float m,h,k; m1: clrscr(); printf("введи свой вес в кг и рост в м "); scanf("%f %f",&m,&h); if (m<=0 || h<=0) { printf("не шути\n"); gotoxy(10,23); printf("Для продолжения нажать Enter"); getch(); goto m1; } k=m/(h*h); if (k<27) printf("%f - норма\n",k); // почему без else плохо? Else if (k>=27 && k<30) printf("%f-ожирение\n",k); Else //if(k>=30) printf("%f-надо лечиться\n",k); gotoxy(10,23); printf("Для продолжения нажать Enter"); getch(); return 0; }
Задача 13. Ввести координаты некоторой точки (x,y). Выяснить и сообщить, попадает ли она внутрь правой полуокружности круга радиуса R=3 с центром в начале координат #include <conio.h> #include <iostream.h> void main() { float x,y,R; clrscr(); cout<<"Введи x "; cin>>x; cout<<"Введи y "; cin>>y; R=3; //радиус if (x >= 0 && sqrt(x*x + y*y) <= R) cout<<" Точка ("<<x<<","<<y<<")"<<" в полукруге"<<endl; Else cout<<" Точка ("<<x<<","<<y<<")"<<" вне полукруга"<<endl; getch(); }
Задача 14. Значения переменных a, b и c поменять местами так, чтобы выполнялось соотношение a≤ b ≤ c.
// Программа отлажена в Visual Studio 2008 // po_vozr2 расположить a, b, c по возрастанию #include<conio.h> #include <iostream> using namespace std;
int main() { int r, a=9, b=7, c=3; if (a>b) { r=a; a=b; b=r; cout<<a<<b<<c<<endl; } if (b>c) { r=b; b=c; c=r; cout<<a<<b<<c<<endl; } if (a>b) { r=a; a=b; b=r; cout<<a<<b<<c<<endl; } getch(); return 0; }
Задача 15. Вычислить и вывести на экран последовательность из М чисел Фибоначчи: 1, 1, 2, 3, 5, 8, 13, 21,... (первые два числа равны 1, а каждое следующее равно сумме двух предыдущих). В программе реализован простейший цикл с помощью операторов if и goto.
// Программа отлажена в Borland C++ Builder 6 #pragma argsused #include <iostream.h> #include <stdio.h> #include <conio.h>
#include "d:\\My_C_Builder_6\\rus.h"
int main() { unsigned long f1,f2,f; int i, M; printf(rus("ВВЕДИ M <= 46 ")); scanf("%d",&M); f1=1; f2=1; i=3; metka: { f=f1+f2; printf("%d-e = %ld\n", i, f); f1=f2; f2=f; i++; } if (i<=M) goto metka;
getch(); return 0; }
|
||||
Последнее изменение этой страницы: 2016-12-16; просмотров: 465; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.116.15.124 (0.007 с.) |