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

где-то ошибка в программе на С++ - C++

Восстановить пароль Регистрация
 
Blacccatt
0 / 0 / 0
Регистрация: 13.02.2011
Сообщений: 37
14.02.2011, 05:52     где-то ошибка в программе на С++ #1
Вычислить путём сложения сумму s=1/2 + 2/3 + 3/4...(всего десять слагаемых)...в сумме почему- то не выводится значение в дроби,не могу найти ошибку,выводит s=0


C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
using namespace std;
main ( )
{   
    int k; float s=0; // объявление переменных
   
        for (k=1; k<=5; k++) // от k=1 до 10 с шагом 1 начинаем суммировать
        s+=k/(k+1); // суммируем
   cout<< "s=" << s << endl; // выводим результат на экран
   system("pause");
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Евгений М.
1033 / 974 / 53
Регистрация: 28.02.2010
Сообщений: 2,817
Завершенные тесты: 2
14.02.2011, 06:37     где-то ошибка в программе на С++ #2
У Вас целочисленное деление. Объявите k как float.
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,051
14.02.2011, 09:07     где-то ошибка в программе на С++ #3
Код
 for (k=1; k<=5; k++) // от k=1 до 10 с шагом 1 начинаем суммировать
вообщето я вижу 5
1,2,3,4,5

Объявите k как float.
ага и переменной цикла его

или так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
main ( )
{   
    int k; float m,s=0; // объявление переменных
   
        for (k=1; k<=5; k++) // от k=1 до 10 с шагом 1 начинаем суммировать
        {
            m=(float)k;
             s+=m/(m+1); // суммируем
         }
   cout<< "s=" << s << endl; // выводим результат на экран
   system("pause");
return 0;
}
или так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
main ( )
{   
    int k; float s=0; // объявление переменных
   
        for (k=1; k<=5; k++) // от k=1 до 10 с шагом 1 начинаем суммировать
        {
           
             s+=(float)k/(float)(k+1); // суммируем
         }
   cout<< "s=" << s << endl; // выводим результат на экран
   system("pause");
return 0;
}
С уважением Валерий
Blacccatt
0 / 0 / 0
Регистрация: 13.02.2011
Сообщений: 37
14.02.2011, 10:58  [ТС]     где-то ошибка в программе на С++ #4
[QUOTE=ValeryS;1367378]
Код
 for (k=1; k<=5; k++) // от k=1 до 10 с шагом 1 начинаем суммировать
вообщето я вижу 5
1,2,3,4,5

ага,я тоже заметил,но не могу отредактировать(((

Спасибо,работает
Yandex
Объявления
14.02.2011, 10:58     где-то ошибка в программе на С++
Ответ Создать тему
Опции темы

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