Задумана проверка на равенство введеного числа с плавающей точкой и 36.6
Но делается это, на самом деле, не совсем верно, дробные числа не совсем также как и целые хранятся в памяти, поэтому, число 1.0 может быть записано как условное 1.00000000000002 и все, уже равенства с 1.0 не будет, поэтому при сравнении дробных число нужно вводить, какую-то очень маленькую величину, например, eps = 1e-6 и сравнивать таким образом: if( fabs(first_number - second_number) <= eps) => ok; else => not ok
Код на C++:
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
setlocale(LC_ALL, "rus");
int l, r, sum, count;
count = 0;
sum = 0;
do
{
cout << "Введи левую и правую части диапазона соответственно: ";
cin >> l >> r;
} while (l > r);
for (int i = l; i <= r; i++)
{
if (i % 2)
{
continue;
}
else
{
sum += i;
count++;
}
}
cout << "\nКоличество четных чисел в диапазоне: " << count << "\nСумма всех честных чисел диапазона" << sum << endl;
return 0;
}
Объяснение:
В данном коде ты вводишь два значения: l и r. Потом мы в цикле прибавляем итератор i к переменной sum, которая отвечает за сумму этих чисел и увеличиваем переменную count на 1 (подсчет количества четных чисел). В конце мы выводим эти переменные заметить, что цикл идет от числа l до r включительно, т.е. i ∈ [l; r], и к примеру при значении l = 2 и r = 4 сумма будет 6 (2 + 4) и количество будет 2 (2 и 4). Если этого не надо, то измени тело цикла на for (int i = l; i < r; i++)
Поделитесь своими знаниями, ответьте на вопрос:
1)некоторый алфавит содержит 128 символов.сообщение содержит 10 символов.определите информационный объём сообщения. 2)сколько кб информации содержит сообщения следующего объёма: 2 в 16 степени бит = 1/4мб = 2 в 16 степени байт =