Помогите с кодом задачи c++. задача на фото - Вопросы по С+

Вопрос Помогите с кодом задачи c++. задача на фото

Регистрация
1 Дек 2013
Сообщения
79
Репутация
0
Спасибо
0
Монет
0
875a8375f91de049494d6073098e8a2f_3b16ba1066912fa534b50e81af9e5ad0.png

 
Регистрация
26 Дек 2013
Сообщения
85
Репутация
0
Спасибо
0
Монет
0
#include < iostream > //убрать пробелы

unsigned int count(int a, int b)
{
unsigned int counter = 0;
for(int i=a;i<=b;i++)
{
if(i%4==0)
{
counter++;
}
}
return counter;
}

int main()
{
int a,b;
std::cout<<"a = "; std::cin>>a;
std::cout<<"b = "; std::cin>>b;
std::cout<<"N = "<<count(a,b)<<std::endl;
return 0;
}
 
Регистрация
17 Окт 2013
Сообщения
89
Репутация
0
Спасибо
0
Монет
0
#include <iostream>
using namespace std;
int main() {
const auto x = 4U;
cout << "A: "; unsigned a; cin >> a;
cout << "B: "; unsigned b; cin >> b;
while (a % x && a < b) ++a;
while (b % x && b > a) --b;
if (a == b && a % x != 0) puts("N: 0");
else if (a == b && a % x == 0) puts("N: 1");
else {
auto n = 0U;
for (auto m = a; m <= b; m += x) ++n;
cout << "N: " << n << '\n';
}
system("pause > nul");
}
 
Регистрация
24 Мар 2013
Сообщения
87
Репутация
0
Спасибо
0
Монет
0
Каждое натуральное число N, кратное четырём (4, 8, 12, 16, ..), можно занумеровать как N/4 (то есть 1, 2, 3, 4, ..). В диапазоне натуральных чисел [a;b] (от a до b включительно) первым числом кратным четырём и не меньшим a будет число с номером (a + 3)/4, a последним числом кратным четырём и не большим b будет число с номером b/4 (под делением подразумевается целочисленное деление !). Поэтому общее количество подходящих чисел можно подсчитать по формуле 1+b/4-(a+3)/4, которая верна даже тогда, когда диапазон [a;b] не содержит чисел, кратных четырём. И никакие циклы тут и даром не нужны, всё гораздо проще:
#include <iostream>
int main() { unsigned long long a, b;
std::cout << "a b » "; std::cin >> a >> b;
std::cout << 1 + b / 4 - (a + 3) / 4 << std::endl; system("pause > nul"); return 0; }
 
Регистрация
2 Ноя 2013
Сообщения
93
Репутация
0
Спасибо
0
Монет
0
Поглядел ответы. Если исходить из того, как у нас:
Существуют два подхода к определению натуральных чисел:
числа, возникающие при подсчёте (нумерации) предметов: первый, второй, третий, четвёртый, пятый…;
числа, возникающие при обозначении количества предметов: 0 предметов, 1 предмет, 2 предмета, 3 предмета, 4 предмета, 5 предметов…
В первом случае ряд натуральных чисел начинается с единицы, во втором — с нуля. Не существует единого для большинства математиков мнения о предпочтительности первого или второго подхода (то есть считать ли ноль натуральным числом или нет). В подавляющем большинстве российских источников традиционно принят первый подход

int A, B, N=0;
do {

cout << "A="; cin >> A;
cout << "B="; cin >> B;

// мой вариант, вроде проще не бывает же?
N = B/4 - (A-1)/4;

/* Сергей Степанов (мелкая проблема если ввели 0 и 0, но это как бы вне натуральных)
A = A - A % 4 + 4 * (bool)(A % 4); //тут бул забыл
B = B - B % 4;
N = (B - A) / 4 + 1;
*/

// Маша Малинина (мелкая проблема если ввели 0 и 0, но это как бы вне натуральных)
//N = 1 + B / 4 - (A + 3) / 4;

cout << "N=" << N << "\n\n";

}
while(A!=0);
 
Сверху Снизу