Форум программистов, компьютерный форум CyberForum.ru

вывести сумму от 0 до n которые не делятся на 2 с помощью while - C++

Восстановить пароль Регистрация
 
Parilo
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
28.06.2012, 20:34     вывести сумму от 0 до n которые не делятся на 2 с помощью while #1
Домашнее задание следующее "2. вывести сумму от 0 до n которые не делятся на 2 с помощью while .(n=5, ответ 1 3 5 9)"

Вот что я написал, но компилятор показывает ошибки в 4 строке.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream.h>
int main ()
{ 
 int a;i=0;sum=0;
 cin >> a;
  while (i<a)
  { 
        
      i=i+1;
      if (i%2) cout <<" "; else cout << "i";
                
    sum=sum+i;
 }
 cout << sum;
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.06.2012, 20:34     вывести сумму от 0 до n которые не делятся на 2 с помощью while
Посмотрите здесь:

C++ вывести на экран те из них ,которые делятся на цело на три ,но не делятся нацело на пять.
C++ вывести такие числа до N,которые не делятся на 2,3,5
C++ Вывести на экран номера всех элементов,которые не делятся на 7.
C++ Вывести все 6-ти значные числа, которые делятся без остатка на сумму своих цифр
Вывести все числа которые делятся на 3 (от 0 до 100) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
g-h
67 / 67 / 1
Регистрация: 03.06.2012
Сообщений: 176
28.06.2012, 20:38     вывести сумму от 0 до n которые не делятся на 2 с помощью while #2
Цитата Сообщение от Parilo Посмотреть сообщение
int a;i=0;sum=0;
Перечислять переменные надо через запятую
Parilo
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
28.06.2012, 21:29  [ТС]     вывести сумму от 0 до n которые не делятся на 2 с помощью while #3
не получается решить. После ввода цифры 5, комп должен выдать 1,3,5 и сумму трёх 9.
а он выводит 1,3,5 и 15. Что пишу неправильно?
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream.h>
int main ()
{ 
 int a,i=0,sum=0;
 cin >> a;
  while (i<a)
  { 
        i=i+1;  
      
      if (i%2) cout << i; 
      int b=i;
                
    sum=sum+i;
 }
  
 cout << sum;
return 0;
}
 
[size="1"][color="grey"][I]Добавлено через 7 минут[/I][/color][/size]
всё нашёл правильный вариант
#include <iostream.h>
int main ()
{ 
 int a,i=0,sum=0;
 cin >> a;
  while (i<a)
  { 
        i=i+1;  
      
        if (i%2)
        {cout << i; 
      
                
        sum=sum+i;}
 }
  
 cout << sum;
return 0;
}
ЛетающийЕнот
88 / 67 / 12
Регистрация: 28.06.2012
Сообщений: 161
28.06.2012, 21:34     вывести сумму от 0 до n которые не делятся на 2 с помощью while #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream.h>
 
int main()
{
 int i=1,n;
 cin >> n;
 if (!n%2) --n;
 while (i<n)
 {
   cout << i << " ";
   i+=2;
 }
 cout << n << endl;
 cout << (n/2+1)*(n/2+1) << endl;
 //system("pause");
 return 0;
}
Добавлено через 5 минут
Зачем считать сумму, если сумма нечётных чисел от 1 до n - квадрат порядкового номера верхнего ограничения (т.е. окр. вниз. (n/2) +1)?
Parilo
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
28.06.2012, 21:42  [ТС]     вывести сумму от 0 до n которые не делятся на 2 с помощью while #5
Ваша программа неправильно работает, она выводит 1,3, 4 и 9.
Моя последняя версия правильная выводит всё чётко 1,3,5 и 9
ЛетающийЕнот
88 / 67 / 12
Регистрация: 28.06.2012
Сообщений: 161
28.06.2012, 21:43     вывести сумму от 0 до n которые не делятся на 2 с помощью while #6
Parilo, по моим данным, это не так. В первом варианте я допустил опечатку, которая уже исправлена.
lesha1980
 Аватар для lesha1980
3 / 3 / 0
Регистрация: 06.01.2012
Сообщений: 42
28.06.2012, 21:52     вывести сумму от 0 до n которые не делятся на 2 с помощью while #7
Не могу понять зачем вам переменная b, но да Бог с вами... Вы сделали уже всю работу, но сумму поставили вне скобок условного оператора, а поэтому суммируете все итерации вашего цикла. У меня так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
int main ()
{
int a,i=0,sum=0;
cin >> a;
while (i<a)
{
i=i+1;
 
if (i%2) 
{
    cout << i;
    sum=sum+i;
}
}
 
cout << sum;
return 0;
}
ЛетающийЕнот
88 / 67 / 12
Регистрация: 28.06.2012
Сообщений: 161
28.06.2012, 21:54     вывести сумму от 0 до n которые не делятся на 2 с помощью while #8
lesha1980, таки зачем вообще суммировать?
Свойство суммы нечётных чисел от 1 до n.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2012, 22:00     вывести сумму от 0 до n которые не делятся на 2 с помощью while
Еще ссылки по теме:

C++ Найти сумму натуральных чисел, которые делятся на 5 и не делятся на m
C++ Вывести натуральные числа, которые не делятся на 3, 4 и 5 и не превосходят заданное

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

Или воспользуйтесь поиском по форуму:
lesha1980
 Аватар для lesha1980
3 / 3 / 0
Регистрация: 06.01.2012
Сообщений: 42
28.06.2012, 22:00     вывести сумму от 0 до n которые не делятся на 2 с помощью while #9
Цитата Сообщение от ЛетающийЕнот Посмотреть сообщение
lesha1980, таки зачем вообще суммировать?
Свойство суммы нечётных чисел от 1 до n.
Решил конкретно поставленную задачу про 5 введенную в компиляторе и про сумму чисел, что не делятся на два...
Yandex
Объявления
28.06.2012, 22:00     вывести сумму от 0 до n которые не делятся на 2 с помощью while
Ответ Создать тему
Опции темы

Текущее время: 06:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru