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

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

Войти
Регистрация
Восстановить пароль
 
GirlFriend
0 / 0 / 0
Регистрация: 28.05.2012
Сообщений: 17
#1

Подскажите, где ошибка в программе - C++

14.11.2012, 17:01. Просмотров 428. Ответов 10
Метки нет (Все метки)

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
#include<iostream.h> 
       #include<math.h> 
       void main()
       {int b,k,t; 
       b=0;k=0;t=0;
       {if  (b+k+t==100)
        for (;b<=10,k<=20,t<=100;)  //здесь должна быть скобка со знаком - ";   )" а не смайл,знаки расставлены так, потому что иначе выдаётся ошибка
 
      b=b++;
           k=k++; 
           t=t++;
          };
cout<<"\nKol_bykov="<<b<<"\nKol_korov="<<k<<"\nKol_telyat="<<t;
}  
 
Почему-то результат: 0
                               1
                               1
 
 А в этом варианте цикл выполняется только 1 раз , а не до заданного условия:
      #include<iostream.h> 
      #include<math.h> 
      void main()
     {int b,k,t; 
     b=0;k=0;t=0;
     {if((20*b+10*k+t==200)&&(b+k+t==100))
       while ((b<=10)&&(k<=20)&&(t<=200));
 
     b=b++;
         k=k++;
         t=t++;
         };
 
     cout<<"\nKol_bykov="<<b<<"\nKol_korov="<<k<<"\nKol_telyat="<<t;
     }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2012, 17:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подскажите, где ошибка в программе (C++):

Подскажите где в программе может быть ошибка - C++
#include &lt;iostream&gt; #include &lt;math&gt; #include &lt;conio&gt; #include &lt;time.h&gt; #include &lt;stdio.h&gt; using namespace std; FILE *f1; ...

Подскажите, где ошибки в программе - C++
#include &lt;conio.h&gt;//підключеннябібліотек #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include &lt;stdlib.h&gt; class Och//класочередь { ...

Подскажите пожалуйста где исправить ошибку в программе сделанную в C++ - C++
Привет всем! У меня случилась одна не большая проблема. Дело в том, что мне задали написать программу: Дан одномерный массив MAS. Найти...

Подскажите, где может быть ошибка (структуры)? (скорее всего где-то амперсенд нужен, все вроде проверил) - C++
написать универсальный тип, который представляет точку на плоскости в координатах (х, у) и в полярных координатах. Написать функцию для...

Где ошибка в программе? - C++
http://********************/show-image.php?id=77045b4d29fc54e45fc9d6c2ab7112d0 #include &lt;stdio.h&gt; #include &quot;stdafx.h&quot; #include...

где-то ошибка в программе на С++ - C++
Вычислить путём сложения сумму s=1/2 + 2/3 + 3/4...(всего десять слагаемых)...в сумме почему- то не выводится значение в дроби,не могу...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
toshich
11 / 11 / 0
Регистрация: 19.10.2012
Сообщений: 28
14.11.2012, 17:49 #2
C++
1
if (b+k+t==100)
Не выполняется же потому в цикл не идет
GirlFriend
0 / 0 / 0
Регистрация: 28.05.2012
Сообщений: 17
14.11.2012, 17:50  [ТС] #3
да(

как их использовать
toshich
11 / 11 / 0
Регистрация: 19.10.2012
Сообщений: 28
14.11.2012, 17:54 #4
Господи, как можно так писать
_Loader_
6 / 6 / 0
Регистрация: 18.04.2012
Сообщений: 92
14.11.2012, 18:00 #5
GirlFriend, Если я не ошибаюсь то в цикл не идет во втором варианте потому, что все переменные = 0, а условие (20*b+10*k+t==200)&&(b+k+t==100) так попробуйте подставить свои переменные которые = 0, и что получится с точки зрения математики?
GirlFriend
0 / 0 / 0
Регистрация: 28.05.2012
Сообщений: 17
14.11.2012, 18:03  [ТС] #6
Цитата Сообщение от _Loader_ Посмотреть сообщение
GirlFriend, Если я не ошибаюсь то в цикл не идет во втором варианте потому, что все переменные = 0, а условие (20*b+10*k+t==200)&&(b+k+t==100) так попробуйте подставить свои переменные которые = 0, и что получится с точки зрения математики?
Да, уже заметила это несоответствие
_Loader_
6 / 6 / 0
Регистрация: 18.04.2012
Сообщений: 92
14.11.2012, 18:11 #7
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> 
void main()
    {
        int b,k,t; 
        b=20;
        k=50;
        t=40;
if((20*b+10*k+t==200)&&(b+k+t==100))
        {
    while ((b<=10)&&(k<=20)&&(t<=200))
    {
            b=b++;
            k=k++;
            t=t++;
    }
        }
        std::cout<<"Kol_bykov="<<b<<"\nKol_korov="<<k<<"\nKol_telyat="<<t<<"\n";
        std::system("Pause");
        }
если что вот второй рабочий вариант
P.S Не стал заворачиваться с форматированием, Пардонте)
GirlFriend
0 / 0 / 0
Регистрация: 28.05.2012
Сообщений: 17
14.11.2012, 18:19  [ТС] #8
Цитата Сообщение от _Loader_ Посмотреть сообщение
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> 
void main()
    {
        int b,k,t; 
        b=20;
        k=50;
        t=40;
if((20*b+10*k+t==200)&&(b+k+t==100))
        {
    while ((b<=10)&&(k<=20)&&(t<=200))
    {
            b=b++;
            k=k++;
            t=t++;
    }
        }
        std::cout<<"Kol_bykov="<<b<<"\nKol_korov="<<k<<"\nKol_telyat="<<t<<"\n";
        std::system("Pause");
        }
если что вот второй рабочий вариант
P.S Не стал заворачиваться с форматированием, Пардонте)
а почему сразу присвоены значения:b=20;
k=50;
t=40;
_Loader_
6 / 6 / 0
Регистрация: 18.04.2012
Сообщений: 92
14.11.2012, 18:22 #9
GirlFriend, так это просто для теста так как ваши нули не подходят, если там правельно написанны два условия, тогда надо подобрать такие значения этих переменных чтобы они удволетворяли каждому словию для достижения кода
C++
1
2
3
            b=b++;
            k=k++;
            t=t++;
Вы скажите что вам надо сделать?
GirlFriend
0 / 0 / 0
Регистрация: 28.05.2012
Сообщений: 17
14.11.2012, 18:27  [ТС] #10
Теперь понятно.
чтобы выполнялись условия:
b+k+t=100 и b*10+k*5+t*0.5=100
_Loader_
6 / 6 / 0
Регистрация: 18.04.2012
Сообщений: 92
14.11.2012, 19:09 #11
Данный цикл поможет вам найти найти много значений которые соответствуют условию i*10 +j*5+k*0.5==100

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
for(int i= 0;;i++)
         {
             for(int j = 0;;j++)
             {
                 for (int k = 0;;k++)
                 {
                     if ((i*10 +j*5+k*0.5)==100)
                     {
                         std::cout<<"b="<<i<<"\nk="<<j<<"\nt="<<k<<"\n"<<"\n";
                         break;
                     }
                    
                 }
                 
             }
        }
Добавлено через 14 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<iostream> 
#include<math.h> 
void main()
{
    for(int i= 0;i < 100;i++)
         {
             for(int j = 0;j <100;j++)
             {
                 for (int k = 0;k <100;k++)
                 {
                     if ((i*10 +j*5+k*0.5==100)&&(i+j+k==100))
                     {
                         std::cout<<"b="<<i<<"\nk="<<j<<"\nt="<<k<<"\n"<<"\n";
                     }
                    
                 }
                 
             }
        } 
    std::system("Pause");
}
Вот доделал, а то на скорую руку был
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.11.2012, 19:09
Привет! Вот еще темы с ответами:

Где ошибка в программе? - C++
#include &lt;iostream&gt; int const SIZE = 100; struct Item { float x; float y; int n; };

где ошибка в программе? - C++
// ConsoleApplication3.cpp : Defines the entry point for the console application. // #include &quot;stdafx.h&quot; #include &lt;fstream&gt; ...

Непонятно где ошибка в программе - C++
Программа должна записывать в output.txt содержимое из файлов заданных через аргумент. printkey 1 - это типа &quot;ассерта&quot; #include...

Не могу понять где ошибка в программе - C++
Здравствуйте, вот написал программу которая должна удалять первые буквы в каждом слове, но в итоге получается что в первом слове все буквы...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
14.11.2012, 19:09
Ответ Создать тему
Опции темы

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