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

неполучаеться написать программу ( - C++

Восстановить пароль Регистрация
 
ForSpam
2 / 2 / 0
Регистрация: 08.02.2011
Сообщений: 38
25.10.2011, 17:03     неполучаеться написать программу ( #1
1. Вводится точность e. Вычислить сумму ряда 1-1/3+1/5-1/7... Вычисления продолжать до тех пор, пока очередное слагаемое не станет меньше e. Вывести рядом pi/4 и сравнить с полученной суммой.

#include <stdio.h>
#include <stdlib.h>

int main() {
int e,a,b,sum,sign,fraction;

сin e;
sum=0;
sign=0;
sing=1;
a=1;
b=1;

do

fraction=1/(a*b);
a=a;
b=b+2
sum=sum+sign*drobj;
sign=-sign;

while fraction>e

вобщем что-то в этом роде должно быть, а дальше заступорился....надо использовать while, do...while, и return (
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2011, 17:03     неполучаеться написать программу (
Посмотрите здесь:

написать программу C++
C++ Написать программу
C++ Написать программу.
Написать программу(C++) C++
C++ Написать программу в C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
hepr
 Аватар для hepr
60 / 32 / 5
Регистрация: 21.10.2010
Сообщений: 538
25.10.2011, 17:45     неполучаеться написать программу ( #2
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
#include "iostream"
#include "string"
#include "math.h"
 
using namespace std;
 
 
int main()
{
    double e;
    e = 1;
    double number = 1;
    bool isPlus = false; 
    for (double a = 3;number>=e;a+=2)
    {
        if (!isPlus)
        {
            number -= 1/a;
            isPlus = true;
        }
        else
        {
            number += 1/a;
            isPlus = false;
        }
    }
    cout << number;
    system("pause");
    return 0;
ForSpam
2 / 2 / 0
Регистрация: 08.02.2011
Сообщений: 38
25.10.2011, 17:55  [ТС]     неполучаеться написать программу ( #3
Цитата Сообщение от hepr Посмотреть сообщение
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
#include "iostream"
#include "string"
#include "math.h"
 
using namespace std;
 
 
int main()
{
    double e;
    e = 1;
    double number = 1;
    bool isPlus = false; 
    for (double a = 3;number>=e;a+=2)
    {
        if (!isPlus)
        {
            number -= 1/a;
            isPlus = true;
        }
        else
        {
            number += 1/a;
            isPlus = false;
        }
    }
    cout << number;
    system("pause");
    return 0;
Спасибо теперь буду пытаться переделать через while.
bool isPlus - что это такое можете пояснить ?

Добавлено через 5 минут
Цитата Сообщение от ForSpam Посмотреть сообщение
Спасибо теперь буду пытаться переделать через while.
bool isPlus - что это такое можете пояснить ?
Написанная вами программа как то несовсем правильно работает
hepr
 Аватар для hepr
60 / 32 / 5
Регистрация: 21.10.2010
Сообщений: 538
25.10.2011, 18:10     неполучаеться написать программу ( #4
Подумайте сами мы складываем и вычитаем с числами 1/a и с каждой инертацией они все меньше и меньше, соответственно так или иначе число которое мы получим в конце будет лишь немного отличатся от данного, и или произойдет бесконечная работа программы, или должен случится выход на первых инертациях, как в примере который я вам дал, то бишь не решение такое, задача такая))

Добавлено через 1 минуту
А bool isPlus - это переменная логического типа, фактически основное её предназначение говорить текущий знак, в начале программы она стоит на минусе, то есть сейчас плюс(так переводится имя переменной) - нет, делаем то-то и меняем её на плюс-> в следующей инертации будут действия с плюсом
Yandex
Объявления
25.10.2011, 18:10     неполучаеться написать программу (
Ответ Создать тему
Опции темы

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