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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
#1

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

23.02.2013, 23:46. Просмотров 1549. Ответов 43
Метки нет (Все метки)

Доброго времени суток. Только начал изучать этот язык в институте, а там уже лабы требуют, и я в ужасе пытаюсь их успевать делать)
Дали задание:
что сделал я:
Кликните здесь для просмотра всего текста
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..

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

Не работает цикл for - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main() { int x; for(x=0; x&lt;10; x++); cout &lt;&lt; x &lt;&lt; &quot; &quot;; ...

Не работает цикл - C++
почему i всегда 0 ? #include &lt;conio.h&gt; #include &lt;iostream&gt; using namespace std; int main(void) { int j = 0; int n =...

Не работает цикл while() - C++
Подскажите, почему в функции Viewfull() цикл срабатывает только на половину while (m1!=m2 &amp;&amp; y1!=y2) то есть только для m1!=m2 void...

Не работает цикл while - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main() { setlocale (0,&quot;Ukrainian&quot;); int chcount=0; int...

Не работает цикл - C++
Не могу понять почему не работает цикл. Объясните, пожалуйста. #include &lt;iostream&gt; using namespace std; int main(int...

Не работает цикл - C++
Задание к примеру ввожу матрицу 2х2 1 2 3 4 должно выдать 4 а выдаёт 2 в чём проблема?

43
Kuzia domovenok
1892 / 1747 / 119
Регистрация: 25.03.2012
Сообщений: 5,936
Записей в блоге: 1
24.02.2013, 00:45 #16
Цитата Сообщение от Darkaind Посмотреть сообщение
ну я не понимаю что там должно быть?
я всё-таки надеюсь, что ты сам откроешь книгу и порадуешься своей сообразительности. Мне очень не хочется портить сюрприз, иначе давно сказал бы,

Не по теме:

хотелось бы, чтоб и форумчане не разрушали эту мистическую загадку прямым ответом, хотя...


Ещё раз: при написании цикла for обращай внимание на все знаки препинания. (которые должны быть, и которых не должно быть!)
Загляни ещё раз в литературу
1
Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
24.02.2013, 00:48  [ТС] #17
Kuzia domovenok,
так что ли?) если да, то я слооооуууу, я думал Вы про точки с запятой внутри)
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#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;
    
}
0
HighPredator
5541 / 1854 / 346
Регистрация: 10.12.2010
Сообщений: 5,472
Записей в блоге: 2
24.02.2013, 00:51 #18
Darkaind, так, давайте вы пойдете, матчасть изучите.
0
Kuzia domovenok
1892 / 1747 / 119
Регистрация: 25.03.2012
Сообщений: 5,936
Записей в блоге: 1
24.02.2013, 00:51 #19
ОК, теперь добавь {скобки}
0
Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
24.02.2013, 00:51  [ТС] #20
блин
0
Kuzia domovenok
1892 / 1747 / 119
Регистрация: 25.03.2012
Сообщений: 5,936
Записей в блоге: 1
24.02.2013, 00:53 #21
нет, но точку с запятой убрал-таки.
0
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;
    
}

тадааам?
0
valeriikozlov
Эксперт С++
4671 / 2497 / 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)
0
Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
24.02.2013, 13:47  [ТС] #24
valeriikozlov,
да... но я не знаю как это сделать, даже идей нету
0
valeriikozlov
Эксперт С++
4671 / 2497 / 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;
    
}
0
Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
24.02.2013, 18:35  [ТС] #26
valeriikozlov,
а что изменилось?...
0
valeriikozlov
Эксперт С++
4671 / 2497 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.02.2013, 18:53 #27
Цитата Сообщение от Darkaind Посмотреть сообщение
а что изменилось?...
сравните два кода и увидите
0
Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
24.02.2013, 19:43  [ТС] #28
valeriikozlov,
а скобочка перекочевала, невнимательность, невнимательность... чтож с тобой делать
теперь то код правильный?
а значение то чтоб показывало, два раза cout писать?
0
valeriikozlov
Эксперт С++
4671 / 2497 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.02.2013, 20:50 #29
Цитата Сообщение от Darkaind Посмотреть сообщение
а скобочка перекочевала, невнимательность, невнимательность... чтож с тобой делать
Не только скобочка перекочевала. Кстати она перкочевала, что бы показывать значения F при различных значениях x. А в Вашем коде выводилось последнее возможное значение F и значение x, при котором вообще F не вычислялось.
По поводу:
Цитата Сообщение от Darkaind Посмотреть сообщение
чтож с тобой делать
со мной лучше ничего не делать, попробуйте что-нибудь сделать с собой )
0
Darkaind
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 27
25.02.2013, 10:06  [ТС] #30
valeriikozlov,
да я про себя, чтож со свой невнимательностью делать)
а по поводу кода, я что то туплю, как сделать так чтобы мне выводило значения то?

Добавлено через 12 часов 19 минут
не, ну правда, подскажите пжлста...
0
25.02.2013, 10:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2013, 10:06
Привет! Вот еще темы с ответами:

Цикл for не работает - C++
начал учить с++ дошол к циклам, написал вот такой код, а он видает только число 11, подскажите в чем проблема? #include &lt;iostream&gt; ...

Не работает цикл for - C++
Всем привет! Необходимо было написать реализацию RSA, однако возникли проблемы с циклом for: for (i=2; i&lt;=funcN; i++) if...

Цикл не работает - C++
Вот код // 2.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include &quot;iostream&quot; #include...

Не работает цикл - C++
int Date::getYear() { int a; while (1) { cout&lt;&lt;&quot;Year: &quot;; cin&gt;&gt;a; if (a&gt;0||a&lt;10000) break; cout&lt;&lt;&quot;Error!&quot;&lt;&lt;endl; ...


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

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

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