Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
sasha19
0 / 0 / 0
Регистрация: 05.05.2014
Сообщений: 92
1

Найти сумму целых положительных чисел из промежутка от А до В, кратных 4

30.12.2014, 14:41. Просмотров 2522. Ответов 23
Метки нет (Все метки)

Доброго времени суток...нужно исправить прогу, как я понимаю её ошибка заключается в том, что она считает с первого элемента, нужно добавить цикл чтобы она прибавляла 4 с первого числа кратное 4((
Вот задание и код программы:
Найти сумму целых положительных чисел из промежутка от А до В, кратных 4. Значения А и В вводятся с клавиатуры.

Код:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<stdio.h>
 #include<conio.h>
 
int sum = 0;
int minA = A;
if (A< 0)
  minA = 0;
 
int i = minA;
if (minA%4) 
  i += (4 - minA%4);
 
for (i = minA; i <=B; i += 4)
  sum+=i;
 
cout<< sum << endl;
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.12.2014, 14:41
Ответы с готовыми решениями:

Найти сумму целых положительных чисел, кратных 3 и меньше 100
Найти сумму целых положительных чисел, кратных 3 и меньше 100. Заранее спасибо.

Найти сумму целых положительных чисел, кратных 4 и меньших 100
Найти сумму целых положительных чисел, кратных 4 и меньших 100.

Найти сумму целых положительных чисел, кратных 4 и меньших 100
Знайти суму цілих додатних чисел, кратних 4 і менших 100 помогите пожалуйста...

Найти сумму целых положительных чисел, кратных 4 и меньших 100
()()())())

Найти сумму целых положительных чисел кратных 4. Массив х[8], Xi - целые числа
и если можно еще блок-схему накидайте

23
IrineK
Заблокирован
30.12.2014, 14:51 2
Непонятно - у вас С или С++.
У вас проблемы с вводом/выводом.
0
Velesthau
524 / 427 / 159
Регистрация: 25.11.2014
Сообщений: 1,662
30.12.2014, 14:52 3
Где вводятся числа? Почему проверка вне цикла? Что здесь происходит?
0
sasha19
0 / 0 / 0
Регистрация: 05.05.2014
Сообщений: 92
30.12.2014, 15:07  [ТС] 4
Да программа написанна не правильно, язык С++...как исправить я не понимаю, помогите пожалуйста!!!
0
Boleon
Guardian of Asgaard
373 / 316 / 197
Регистрация: 11.11.2013
Сообщений: 1,046
Завершенные тесты: 1
30.12.2014, 15:16 5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
using namespace std;
 
int main() {
    int a, b;
    int sum = 0;
    
    cin >> a >> b;
    
    for ( ; a <= b; a++ ) {
        if ( a % 4 == 0) {
            sum += a;
        }
    }
    cout << sum;
    
    return 0;
}
1
Garold
9 / 9 / 1
Регистрация: 17.02.2013
Сообщений: 344
Завершенные тесты: 1
30.12.2014, 15:16 6
sasha19,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <cstdio>
using namespace std;
 
int main()
{
    int sum, A, B, ch;
    sum = 0;
    cout << "Введите начало отрезка: ";
    cin >> A;
    cout << "Введите конец отрезка: ";
    cin >> B;
    for (ch = A; ch <= B; ch++)
    {
        if (ch%4) continue;
        sum = sum + ch;
    }
    cout << sum;
    return 0;
    
}
Остальное сами.
0
boris9057
1 / 1 / 1
Регистрация: 29.12.2014
Сообщений: 108
30.12.2014, 15:19 7
Добавлено через 2 минуты
Цитата Сообщение от Garold Посмотреть сообщение
#include <cstdio>
Зачем это надо в данной программе?
0
Garold
9 / 9 / 1
Регистрация: 17.02.2013
Сообщений: 344
Завершенные тесты: 1
30.12.2014, 15:38 8
boris9057, забыл убрать с предыдущей программы. Это здесь ни к чему.
0
_Ivana
3236 / 1869 / 235
Регистрация: 01.03.2013
Сообщений: 5,111
Записей в блоге: 5
30.12.2014, 18:03 9
sasha19, вот вы плюсуете советчикам, а ваш кот в первом посте был качественно лучше последующих предложенных овнокодов. Думайте своей головой, вы же сразу написали нормальный алгоритм.

Добавлено через 1 минуту
ЗЫ пардон, это не вы плюсуете, а авторы упомянутых кодов - тогда все в порядке
0
Boleon
Guardian of Asgaard
373 / 316 / 197
Регистрация: 11.11.2013
Сообщений: 1,046
Завершенные тесты: 1
30.12.2014, 18:14 10
овнокоды значит...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
 
using namespace std;
 
int main() {
    const int divisor = 4;
    int min, max;
    int multiple;
    int sum = 0;
    
    cin >> min >> max;
    
    multiple = min - min % divisor;
    
    if ( multiple < min ) {
        multiple += divisor;
    }
    
    for ( ; multiple <= max; multiple += divisor ) {
        sum += multiple;
    }
    
    cout << sum << endl;
    
    return 0;
}
0
_Ivana
3236 / 1869 / 235
Регистрация: 01.03.2013
Сообщений: 5,111
Записей в блоге: 5
30.12.2014, 18:22 11
Boleon, а разве нет? А если подумаете еще, то сделаете вашего кота еще лучше.
0
Garold
9 / 9 / 1
Регистрация: 17.02.2013
Сообщений: 344
Завершенные тесты: 1
30.12.2014, 18:44 12
_Ivana, извините, пожалуйста...

P.S. У нас тут не конкурс на лучший код вроде как, не все такие умные, как Вы.
0
_Ivana
3236 / 1869 / 235
Регистрация: 01.03.2013
Сообщений: 5,111
Записей в блоге: 5
30.12.2014, 18:55 13
Garold, перед ТС извиняйтесь лучше - вы же ему свои решения предлагаете.
C++
1
2
3
    int a, b, d = 4; cout << "Введите a, b: "; cin >> a >> b;   
    int p = a/d + (a%d ? 1 : 0), q = b/d, s = (p>q) ? 0 : (p+q)*d/2*(q-p+1);
    cout << "Результат: " << s <<'\n';
0
Garold
9 / 9 / 1
Регистрация: 17.02.2013
Сообщений: 344
Завершенные тесты: 1
30.12.2014, 19:00 14
_Ivana, это был сарказм.
0
_Ivana
3236 / 1869 / 235
Регистрация: 01.03.2013
Сообщений: 5,111
Записей в блоге: 5
30.12.2014, 19:05 15
Garold, понял, не вчера родился. Но если вы способны только на сарказм и овнокод, то это не повод учить этому ТС, у него должен быть шанс избежать этой участи.
0
Garold
9 / 9 / 1
Регистрация: 17.02.2013
Сообщений: 344
Завершенные тесты: 1
30.12.2014, 19:09 16
_Ivana, спросите лучше ТС, понимает ли он то, что вы написали ? Проходили они такое ? Нужна ли ему ваша изящность ?
0
_Ivana
3236 / 1869 / 235
Регистрация: 01.03.2013
Сообщений: 5,111
Записей в блоге: 5
30.12.2014, 19:14 17
Garold, справедливо, дождемся ТС и спросим. В каком классе школы он учится, и проходил ли уже арифметическую прогрессию. А заодно можем этот же вопрос задать остальным участникам темы. Я ведь тоже умею играть в сарказм. А если непонятен синтаксис тернарных операторов, то он на ифах легко переписывается.
0
Garold
9 / 9 / 1
Регистрация: 17.02.2013
Сообщений: 344
Завершенные тесты: 1
30.12.2014, 19:19 18
_Ivana, я про тернарные операторы и имею в виду.
Что-то мне подсказывает, что ТС забил на это и унес первый код.
0
_Ivana
3236 / 1869 / 235
Регистрация: 01.03.2013
Сообщений: 5,111
Записей в блоге: 5
30.12.2014, 19:30 19
Я тоже думаю что мало шансов, что ТС поймет, заинтересуется, сравнит различные подходы, увидит их отличия, проникнется и запомнит на будущее. И тогда получается я занимаюсь пустословием, попутно лишь обижая других участников. Но с другой стороны, надо поднимать уровень раздела, его же много других людей просто читают - и эту тему в том числе. И в свете такого подхода надо задавать достойные ориентиры.
0
Dani
1393 / 637 / 134
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
Завершенные тесты: 1
31.12.2014, 00:32 20
C++
1
cout << b / 4 - (a-1) / 4;
0
31.12.2014, 00:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.12.2014, 00:32

Задача на цикл. Найти сумму целых положительных чисел, кратных 3 и меньших 200
Правильно ли я виполниз задачу? Найти сумму целых положительных чисел, кратных...

Найти сумму целых положительных чисел, больших 30 и меньших 100, кратных трем и оканчивающихся на 2, 4 и 8
Найти сумму целых положительных чисел, больших 30 и меньших 100, крат- ных...

Найти сумму целых положительных чисел, больших 30 и меньших 100 кратных трем с помощью цикл While
Найти сумму целых положительных чисел, больших 30 и меньших 100 кратных трем....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru