1)
Входные данные: X = 3.08763
Выходные данные:
Целая часть числа равна 3
дробная часть числа равна 0.08763
целая часть больше
число после изменения x=30.8763
2)
Входные данные: X = 1.2345
Выходные данные:
Целая часть числа равна 1
дробная часть числа равна 0.2345
дробная часть, умноженная на 10 больше
удесятеренная дробная часть равна
2.345
число после изменения x=1
Блок-схема к задаче 1

2.4 Листинг программы на языке С++ к задаче 1
#include <iostream.h>
using namespace std;
int main()
{
float x;
cout<<"\nVvod x";
cin>>x;
float y,z;
// Рассчитываем целую часть
y=(int)x;
// Рассчитываем дробную часть
z=x-(int)x;
cout<<"\nCelaya chast="<<y;
cout<<"\nDrobnaya chast="<<z;
// Проверка условия
if (y>z*10)
{
cout<<"\nCelaya chast bolshe";
x=x*10;
}
else
{
cout<<"\nDrobnaya chast *10 bolshe";
x=x-z;
}
cout<<"\nx="<<x;
}
Условие задачи 2
Ввести четырёхзначное число, выяснить равны ли первая и последняя цифра в его записи. Если цифры равны и чётны, то разделить их на два. Если цифры не равны и первая цифра больше последней, то поменять их местами. Если цифры не равны и первая цифра меньше последней, то поменять местами вторую и третью цифры.
Тестовые примеры к задаче 2
1)
Входные данные: X = 4124
Выходные данные:
первая и последняя цифры четны и равны
в результате преобразований получено число X = 2122
2)
Входные данные: X = 2658
Выходные данные:
первая и последняя цифры не равны
в результате преобразований получено число X = 2568
3)
Входные данные: X = 8562
Выходные данные:
первая и последняя цифры не равны
в результате преобразований получено число X = 2568
4)
Входные данные: X = 5125
Выходные данные:
первая и последняя цифры равны, но они не четны
в результате преобразований получено число X = 5125
Блок-схема к задаче 2


2.8 Листинг программы на языке С++ к задаче 2
#include <iostream.h>
using namespace std;
int main()
{
int x,y,x1,x2,x3,x4;
cout<<"\Vvod x";
cin>>x;
// чтобы не потерять исходное число, копируем его в Y
y=x;
x1=y / 1000; // первая цифра
y= y % 1000; // отбрасываем первую цифру
x2=y / 100; // вторая цифра
y= y % 100; // отбрасываем вторую цифру
x3=y / 10; // третья цифра
x4= y % 10; // четвёртая цифра
// проверяем правильно ли мы разложили
// введённое число
y= 1000*x1 + 100*x2 + 10*x3 + x4;
cout<<"\nBilo x="<<x<<"\tStalo y="<<y;
cout<<"\nCifri:"<<x1<<"\t"<<x2<<"\t"<<x3<<"\t"<<x4;
if (x1==x4)
{
if (x1 % 2==0) // x4 не проверяем, т.к. x1=x4
{
cout<<"\n Cifri ravni";
x1=x1 / 2;
x4=x4 / 2;
}
else
cout<<"\n Cifri ravni no necetni";
}
else
{
cout<<"\n Cifri ne ravni";
if (x1>x4)
{
y=x1;
x1=x4;
x4=y;
}
else
{
y=x2;
x2=x3;
x3=y;
}
}
x= 1000*x1 + 100*x2 + 10*x3 + x4;
cout<<"\n Posle preobrazovaniy x="<<x;
}
2.9 Контрольные вопросы по теме «Разветвляющиеся вычислительные процессы»
1. Определение разветвляющегося вычислительного процесса.
2. Блок-схема условного оператора и порядок его исполнения.
3. Оператор, реализующий разветвляющийся вычислительный процесс.
4. Запись условий: понятие условия, выражения отношения, логические операции, логические выражения.
5. Запись условия попадания значения в интервал и вне интервала.
2.10 Варианты заданий по теме «Разветвляющиеся вычислительные процессы»
Лабораторная работа № 2
Простые развилки
1. Вывести сумму чисел
, определить четная ли она, если четная, то найти значение произведения
.
2. Определить делится ли на целое число
целое число
без остатка. Если делится, то разделить
на
и вывести его.
3. Проверить на неотрицательность значение выражения
. Если выражение неотрицательно, то значение
утроить.
4. Определить имеет ли действительные корни уравнение
. Если имеет, то значение
возвести в квадрат.
5. Ввести целое число
, получить число
, которое равно половине
, если
- четное и удвоенному значению
в противном случае.
6. Ввести целые числа
,
и действительное число
. Модифицировать число
по формуле
, если
не делится на
и
в противном случае. (
- остаток от деления
на
).
7. Если
больше чем
, то
увеличить на 10, в противном случае
уменьшить в два раза.
8. Для двух неравных чисел
и
определить какая из дробей
или
ближе к числу
. В первом случае число
удвоить, во втором удвоить число
.
9. Определить делится ли на 5 введенное число
. Если делится, то другому числу
присвоить
, в противном случае
сделать равным
.
10. Проверить равно ли нулю выражение
, где
- целая часть выражения
. Если выражение обращается в ноль, то значение
утроить.
11. Для двух дробей
и
выяснить равны ли их дробные части. Если дробные части равны, то вывести оба значения, если нет, то ограничиться выводом соответствующего сообщения.
12. Для двух дробей
и
выяснить равны ли их дробные части. Если части равны, то вывести один раз значение дробной части, если не равны, то вывести обе дробные части.
13. Для дроби
определить превышает ли дробная часть числа
. Если превышает, то число
удвоить, иначе удвоить число
.
14. Определить превышает ли умноженная на 10 дробная часть числа
целую часть
. Если превышает, то вывести значение на сколько.
15. Определить является ли целая часть числа
четной. Если она четная, то
возвести в квадрат, иначе
утроить.
16. Возвести во вторую степень число
, если его целая часть больше числа
, где
остаток от деления
на 5.
17. Ввести три числа
,
,
, определить их сумму
. Если сумма больше или равна 100, то оставить числа без изменения, в противном случае определить число
- сколько не хватает в сумме, чтобы она была равна 100.
18. Определить превышает ли число
значение числа
, являющегося остатком от деления
на 7. Если превышает, то
уменьшить на
, в противном случае
увеличить в
раз.
19. Выяснить превышает ли модуль числа
значение
. Если превышает, то
уменьшить вдвое, в противном случае
удвоить.
20. Ввести четыре числа
,
и
,
- стороны прямоугольников. Выяснить, равны ли их площади. Если не равны, то выяснить модуль разности их площадей.
21. Определить превышает ли умноженная на 8 целая часть числа
дробную часть
. Если превышает, то вывести значение на сколько.
22. Возвести во третью степень число
, если его дробная часть больше числа
, где
остаток от деления
на 6.
23. Ввести целые числа
,
и действительное число
. Модифицировать число
по формуле Z+ X3, если
делится на
и Z2-Y в противном случае.
24. Ввести три числа
,
,
, определить их произведение p. Если p больше или равно 175, то оставить числа без изменения, в противном случае определить число z - сколько не хватает в произведении, чтобы оно было равно 175.
25. Определить делится ли на 9 без остатка произведение трех чисел
,
и
. Если делится, то определить среднее арифметическое этих чисел.
26. Ввести два числа
и
. Определить превышает ли сумма остатков от деления на 11 этих чисел число 11. Если превышает, то увеличить их оба на 5.
27. Ввести два числа
и
. Поделить нацело
на
. Определить четность полученного числа. Если полученное число четное, то возвести
и
в квадрат.
28. Определить делится ли на 3 без остатка сумма трех чисел
,
и
. Если делится, то определить произведение этих чисел.
29. Ввести два числа
и
. Определить превышает ли разность остатков от деления на 7 этих чисел число 14. Если превышает, то увеличить их оба на 3.
30. Определить является ли целая часть числа b/ c четной. Если она нечетная, то с возвести в куб, иначе b удвоить.
Лабораторная работа № 3






