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

Не работает цикл - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
23.02.2013, 23:46     Не работает цикл #1
Доброго времени суток. Только начал изучать этот язык в институте, а там уже лабы требуют, и я в ужасе пытаюсь их успевать делать)
Дали задание:
что сделал я:
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream.h>
#include <math.h> 
int main(){
    int x1, x2, dx, i, a, b, c, F, x, ; //x1 - x начальное, x2 - x конечное, dx - шаг.
    cout<<("Enter x1, x2, dx, a, b, c \n");
    cin>>x1, x2, dx, a, b, c;
    for (i = x1; 1 < x2; i=i+dx);
    i=x;
    if (x<0 && b!=0) F=a*pow(x,2)+b;
    else if (x>0 && b==0) F=(x/(x-c))+5.5;
    else x/-c;
    cout<<("x= ")<<x<<endl;
    cout<<("F= ")<<F<<endl;
    return 0;
}

сделал я это на borland c++ 3.1, на ipad из под дос, оно работает, может не точно, но работает)
Придя домой перекатал это в вижал студио 2010, там немного пришлось поправить
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <math.h> 
int main(){
    using namespace std;
    double x1, x2, dx, a, b, c, F, x, i; //x1 - x начальное, x2 - x конечное, dx - шаг. 
    cout<<("Enter x1, x2, dx, a, b, c \n");
    cin>>x1, x2, dx, a, b, c;
    for (i = x1; 1 < x2; i=i+dx);
    i=x;
    if (x<0 && b!=0) F=a*pow(x,2)+b;
    else if (x>0 && b==0) F=(x/(x-c))+5.5;
    else x/-c;
    cout<<("x= ")<<x<<endl;
    cout<<("F= ")<<F<<endl;
    return 0;
}

и тут мне выдает на каждую переменную The variable '{имя}' is being used without being initialized..

Язык учу... ну недели две, вообще пока полный ноль, одну работу простейшую сделал по формуле посчитать
Сильно не бейте. Код обязательно надо под вижал делать, потому что препод ток так проверяет...
Миниатюры
Не работает цикл  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2013, 23:46     Не работает цикл
Посмотрите здесь:

C++ Не работает цикл!!!
C++ Не работает цикл
C++ Не работает цикл while
C++ Не работает цикл
Не работает цикл for C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
24.02.2013, 00:53     Не работает цикл #21
нет, но точку с запятой убрал-таки.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
24.02.2013, 00:56  [ТС]     Не работает цикл #22
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <math.h> 
int main(){
    using namespace std;
    double x1, x2, dx, a, b, c, F, x, i; //x1 - x начальное, x2 - x конечное, dx - шаг. 
    cout<<"Enter x1, x2, dx, a, b, c \n";
    cin>>x1>>x2>>dx>>a>>b>>c;
    for (double i = x1; i < x2; i=i+dx)
    {
    x=i;
    if (x<0 && b!=0) F=a*pow(x,2)+b;
    else if (x>0 && b==0) F=(x/(x-c))+5.5;
    else x/-c;
    }
    cout<<"x= "<<x<<endl;
    cout<<"F= "<<F<<endl;
    system("pause");
    return 0;
    
}

тадааам?
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.02.2013, 11:25     Не работает цикл #23
Цитата Сообщение от Darkaind Посмотреть сообщение
тадааам?
1. Чему равно F "в остальных случаях" ?
2. Эти строки:
Цитата Сообщение от Darkaind Посмотреть сообщение
C++
1
2
cout<<"x= "<<x<<endl;
 cout<<"F= "<<F<<endl;
видимо нужно выводить при всех значениях i. Но в приведенном коде выведется всего один раз (при i>=x2)
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
24.02.2013, 13:47  [ТС]     Не работает цикл #24
valeriikozlov,
да... но я не знаю как это сделать, даже идей нету
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.02.2013, 17:22     Не работает цикл #25
попробуйте так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <math.h> 
int main(){
    using namespace std;
    double x1, x2, dx, a, b, c, F, x, i; //x1 - x начальное, x2 - x конечное, dx - шаг. 
    cout<<"Enter x1, x2, dx, a, b, c \n";
    cin>>x1>>x2>>dx>>a>>b>>c;
    for (double i = x1; i < x2; i=i+dx)
    {
    x=i;
    if (x<0 && b!=0) F=a*pow(x,2)+b;
    else if (x>0 && b==0) F=(x/(x-c))+5.5;
    else F=x/-c;    
    cout<<"x= "<<x<<endl;
    cout<<"F= "<<F<<endl;
    }
    system("pause");
    return 0;
    
}
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
24.02.2013, 18:35  [ТС]     Не работает цикл #26
valeriikozlov,
а что изменилось?...
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.02.2013, 18:53     Не работает цикл #27
Цитата Сообщение от Darkaind Посмотреть сообщение
а что изменилось?...
сравните два кода и увидите
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
24.02.2013, 19:43  [ТС]     Не работает цикл #28
valeriikozlov,
а скобочка перекочевала, невнимательность, невнимательность... чтож с тобой делать
теперь то код правильный?
а значение то чтоб показывало, два раза cout писать?
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.02.2013, 20:50     Не работает цикл #29
Цитата Сообщение от Darkaind Посмотреть сообщение
а скобочка перекочевала, невнимательность, невнимательность... чтож с тобой делать
Не только скобочка перекочевала. Кстати она перкочевала, что бы показывать значения F при различных значениях x. А в Вашем коде выводилось последнее возможное значение F и значение x, при котором вообще F не вычислялось.
По поводу:
Цитата Сообщение от Darkaind Посмотреть сообщение
чтож с тобой делать
со мной лучше ничего не делать, попробуйте что-нибудь сделать с собой )
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
25.02.2013, 10:06  [ТС]     Не работает цикл #30
valeriikozlov,
да я про себя, чтож со свой невнимательностью делать)
а по поводу кода, я что то туплю, как сделать так чтобы мне выводило значения то?

Добавлено через 12 часов 19 минут
не, ну правда, подскажите пжлста...
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
25.02.2013, 13:24     Не работает цикл #31
Цитата Сообщение от Darkaind Посмотреть сообщение
как сделать так чтобы мне выводило значения то?
Вам нужно что бы в одну строчку выводило F и x?
Тогда попробуйте так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <math.h> 
int main(){
    using namespace std;
    double x1, x2, dx, a, b, c, F, x, i; //x1 - x начальное, x2 - x конечное, dx - шаг. 
    cout<<"Enter x1, x2, dx, a, b, c \n";
    cin>>x1>>x2>>dx>>a>>b>>c;
    for (double i = x1; i < x2; i=i+dx)
    {
    x=i;
    if (x<0 && b!=0) F=a*pow(x,2)+b;
    else if (x>0 && b==0) F=(x/(x-c))+5.5;
    else F=x/-c;    
    cout<<"F= "<<F"   x= "<<x<<endl;
    }
    system("pause");
    return 0;
    
}
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
25.02.2013, 16:03  [ТС]     Не работает цикл #32
valeriikozlov,
у меня вообще ничего не выводит, ни в каком виде, я ввожу значения, ентер, и все, у меня висит для продолжения нажмите клавишу. А ваш вариант не запускается, ошибку выдает:
C++
1
cout<<"F= "<<F"   x= "<<x<<endl;
тут после <<F << надо поставить? Все равно ничего не выдает...
Миниатюры
Не работает цикл  
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,337
Завершенные тесты: 1
25.02.2013, 16:20     Не работает цикл #33
Цитата Сообщение от Darkaind Посмотреть сообщение
тут после <<F << надо поставить?
Надо. Перед каждым выводом чего-либо с помощью cout нужно ставить <<.
C++
1
cout<<"F= "<<F<<"   x= "<<x<<endl;
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
25.02.2013, 17:23  [ТС]     Не работает цикл #34
SatanaXIII,
ну у меня все равно ничего не выводится
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
25.02.2013, 18:18     Не работает цикл #35
Цитата Сообщение от Darkaind Посмотреть сообщение
SatanaXIII,
ну у меня все равно ничего не выводится
Код покажите, который пробуете.
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
25.02.2013, 19:39  [ТС]     Не работает цикл #36
alsav22,
так оба
вариант valeriikozlov
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <math.h> 
int main(){
    using namespace std;
    double x1, x2, dx, a, b, c, F, x, i; //x1 - x начальное, x2 - x конечное, dx - шаг. 
    cout<<"Enter x1, x2, dx, a, b, c \n";
    cin>>x1>>x2>>dx>>a>>b>>c;
    for (double i = x1; i < x2; i=i+dx)
    {
    x=i;
    if (x<0 && b!=0) F=a*pow(x,2)+b;
    else if (x>0 && b==0) F=(x/(x-c))+5.5;
    else F=x/-c;    
    cout<<"F= "<<F<<"  x= "<<x<<endl;
    }
    system("pause");
    return 0;
    
}

и мой
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <math.h> 
int main(){
    using namespace std;
    double x1, x2, dx, a, b, c, F, x, i; //x1 - x начальное, x2 - x конечное, dx - шаг. 
    cout<<"Enter x1, x2, dx, a, b, c \n";
    cin>>x1>>x2>>dx>>a>>b>>c;
    for (double i = x1; i < x2; i=i+dx)
    {
    x=i;
    if (x<0 && b!=0) F=a*pow(x,2)+b;
    else if (x>0 && b==0) F=(x/(x-c))+5.5;
    else F=x/-c;    
    cout<<"x= "<<x<<endl;
    cout<<"F= "<<F<<endl;
    }
    system("pause");
    return 0;
    
}

Они в принципе ни чем не отличаются, но не выводится ни в одном, что выводится я писал выше
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
25.02.2013, 19:58     Не работает цикл #37
В код не вникал. Проверил ваш. Может ввёл чушь, не знаю, но выводится. Если не выводится, то может засисит от вводимых данных. Сейчас нет времени проверить.
Миниатюры
Не работает цикл  
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
25.02.2013, 19:58     Не работает цикл #38
Напишите, какие данные вводите.
Darkaind
 Аватар для Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
25.02.2013, 22:39  [ТС]     Не работает цикл #39
alsav22,
а блин, я тормоз, простите
я через запятую вводил, если каждое значение отдельно, то все работает.
Спасибо всем за помощь!))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2013, 22:51     Не работает цикл
Еще ссылки по теме:

C++ Цикл не работает
C++ Не работает цикл for
Не работает цикл while() C++

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

Или воспользуйтесь поиском по форуму:
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
25.02.2013, 22:51     Не работает цикл #40
Можно написать числа через пробел. В конце Enter.
Миниатюры
Не работает цикл  
Yandex
Объявления
25.02.2013, 22:51     Не работает цикл
Ответ Создать тему
Опции темы

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