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

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

Войти
Регистрация
Восстановить пароль
 
Даниил
68 / 41 / 7
Регистрация: 14.05.2013
Сообщений: 383
#1

Исправить код нужно - C++

28.06.2013, 13:39. Просмотров 565. Ответов 12
Метки нет (Все метки)

Программа должна рандомно выдавать фразу или цитату.

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 <cstdlib>
#include <cstring>
using namespace std;
 
 
int main()
{
  bool done;
  do
  {
    char x = rand();
    while (true)
    {
      cout << "Fraza ili citata: " << x << endl;
    string j = "U4itbc9, u4itbc9 u eshe paz u4itbc9!";
      else {
          string y = "Proigratb crazhenie, ne proigratb voiny nax!";
        else
          string n = "Hukogda ne zdavatbc9!";
          break;
        }
      }
    cout << "Prodolzhit? (y/n)? ";
    char c;
    cin >> c;
    done = (c != 'y');
  }while (!done);
  }
Выдаёт две ошибки:

C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|17|ошибка: «else» without a previous «if»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|19|ошибка: «else» without a previous «if»|
||=== Build finished: 2 errors, 0 warnings (0 minutes, 1 seconds) ===|

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

Нужно исправить код - C++
Здравствуйте. Я занимаюсь по книге и в задании привели не сосем правильный код. Привожу; #include &lt;iostream&gt; using namespace...

Нужно исправить код - C++
Нужно исправить код. Ошибку выдаёт. #include&lt;iostream&gt; #include&lt;cmath&gt; using namespace std; int main() { double x,y,b; ...

Нужно немного исправить код - C++
{ifstream in(&quot;1.txt&quot;); in &gt;&gt; n &gt;&gt; m; a = new int*; for (int i = 0; i &lt; n; ++i) { a = new int; for (int j = 0; j &lt; m; ++j) in...

ERROR нужно исправить код - C++
у меня есть код (вычисление определителя матрицы) но он выдает ошибку... &quot;error :: 'main' must return 'int' &quot; помогите кто-нибудь ) ...

нужно дополнить - исправить код - C++
Понимаю, что задач вроде не сложная, но никак не получается переделать код. Я решил задачу , которую выкладывал ниже, про кол-во...

Есть код нужно исправить ошибки - C++
есть задача: ввести размер квадратной матрицы и ее элементы. Элементы матрицы расположить в динамической памяти. Определить номер...

12
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
28.06.2013, 13:40 #2
@Даниил1991, перед "else" поставь "}", т.е "} else", но и после else оставь то, что есть
1
AndLap
0 / 0 / 0
Регистрация: 29.04.2013
Сообщений: 9
28.06.2013, 13:41 #3
@Даниил1991, в пути к программе не должно быть кириллицы.
P.S. Перед else нужен оператор if, после else, если у вас больше одной строки кода то надо использовать фигурные скобки {}, в строке 17 после скобки опять нужен оператор if.
0
drdrink
39 / 39 / 1
Регистрация: 13.05.2013
Сообщений: 103
28.06.2013, 13:41 #4
@Даниил1991, так правильно ты ставишь else но ему не соответствует if, точней их у тебя вообще нет
0
Даниил
68 / 41 / 7
Регистрация: 14.05.2013
Сообщений: 383
28.06.2013, 13:42  [ТС] #5
Цитата Сообщение от nexen Посмотреть сообщение
@Даниил1991, перед "else" поставь "}", т.е "} else", но и после else оставь то, что есть
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 <cstdlib>
#include <cstring>
using namespace std;
 
 
int main()
{
  bool done;
  do
  {
    char x = rand();
    while (true)
    {
      cout << "Fraza ili citata: " << x << endl;
    string j = "U4itbc9, u4itbc9 u eshe paz u4itbc9!";
      } else {
          string y = "Proigratb crazhenie, ne proigratb voiny nax!";
        else
          string n = "Hukogda ne zdavatbc9!";
          break;
        }
      }
    cout << "Prodolzhit? (y/n)? ";
    char c;
    cin >> c;
    done = (c != 'y');
  }while (!done);
  }
Так?

Теперь выдало ещё больше ошибок:

Код
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|17|ошибка: «else» without a previous «if»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|19|ошибка: «else» without a previous «if»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|24|ошибка: expected «while» before «cout»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|24|ошибка: expected «(» before «cout»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|24|ошибка: expected «)» before «;» token|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|28|ошибка: expected unqualified-id before «while»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|29|ошибка: expected declaration before «}» token|
||=== Build finished: 7 errors, 0 warnings (0 minutes, 1 seconds) ===|
Добавлено через 48 секунд
Кароч исправьте ошибку в коде и выложите целый, правильный код А то я не вникаю)
0
drdrink
39 / 39 / 1
Регистрация: 13.05.2013
Сообщений: 103
28.06.2013, 13:44 #6
@Даниил1991, if поставь!!!
0
Даниил
68 / 41 / 7
Регистрация: 14.05.2013
Сообщений: 383
28.06.2013, 13:45  [ТС] #7
Цитата Сообщение от drdrink Посмотреть сообщение
@Даниил1991, if поставь!!!
Где?!Ты поставь в коде и кинь целый, правильный код!Говорю же
0
drdrink
39 / 39 / 1
Регистрация: 13.05.2013
Сообщений: 103
28.06.2013, 13:52 #8
@Даниил1991, я бы поставил да я не совсем понимаю, что ты хочешь сделать вообще
оператор if/else работают так
if(логическое выражение)
{
...
}
else
{
...
}

если логическое выражение верно, то заходим по этому условию и делаем всё что в этих скобках, если оно не верно, то автоматически заходим в ветку для else
0
AndLap
0 / 0 / 0
Регистрация: 29.04.2013
Сообщений: 9
28.06.2013, 13:52 #9
@Даниил1991, Я ещё раз повторю - У вас в пути к программе, есть русские буквы, а путь должен содержать только латиницу.
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|17|ошибка: «else» without a previous «if»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|19|ошибка: «else» without a previous «if»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|24|ошибка: expected «while» before «cout»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|24|ошибка: expected «(» before «cout»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|24|ошибка: expected «)» before «;» token|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|28|ошибка: expected unqualified-id before «while»|
C:\Documents and Settings\Admin\Рабочий стол\Мои работы на С++\Программа которая выдаёт рандомную фразу или цитату\main.cpp|29|ошибка: expected declaration before «}» token|
||=== Build finished: 7 errors, 0 warnings (0 minutes, 1 seconds) ===|
Надо хотя бы так: C:\MyPrograms\RandomProgram

Ваша программа c моими исправлениями:
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
#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
 
 
int main()
{
  bool done;
  do
  {
    char x = rand();
    while (true)
    {
      cout << "Fraza ili citata: " << x << endl;
      if  (string j = "U4itbc9, u4itbc9 u eshe paz u4itbc9!")
      string y = "Proigratb crazhenie, ne proigratb voiny nax!";
      else
      {
          string n = "Hukogda ne zdavatbc9!";
          break;
      }
    }
    cout << "Prodolzhit? (y/n)? ";
    char c;
    cin >> c;
    done = (c != 'y');
  }while (!done);
 
return 0;
  }
0
Даниил
68 / 41 / 7
Регистрация: 14.05.2013
Сообщений: 383
28.06.2013, 13:58  [ТС] #10
Цитата Сообщение от AndLap Посмотреть сообщение
@Даниил1991, Я ещё раз повторю - У вас в пути к программе, есть русские буквы, а путь должен содержать только латиницу.


Надо хотя бы так: C:\MyPrograms\RandomProgram

Ваша программа c моими исправлениями:
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
#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
 
 
int main()
{
  bool done;
  do
  {
    char x = rand();
    while (true)
    {
      cout << "Fraza ili citata: " << x << endl;
      if  (string j = "U4itbc9, u4itbc9 u eshe paz u4itbc9!")
      string y = "Proigratb crazhenie, ne proigratb voiny nax!";
      else
      {
          string n = "Hukogda ne zdavatbc9!";
          break;
      }
    }
    cout << "Prodolzhit? (y/n)? ";
    char c;
    cin >> c;
    done = (c != 'y');
  }while (!done);
 
return 0;
  }
У меня никогда из-за русских букв в пути к проге не было проблем
0
nxtech
28.06.2013, 14:00
  #11

Не по теме:

Ну ты темы близницы плодить горазд

0
Schizorb
510 / 462 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
28.06.2013, 14:01 #12
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 <cstdlib>
#include <cstring>
#include <ctime>
 
int main()
{
    const int n = 3;
    std::string phrase[n] = 
    {
        "U4itbc9, u4itbc9 u eshe paz u4itbc9!",
        "Proigratb crazhenie, ne proigratb voiny nax!",
        "Hukogda ne zdavatbc9!"
    };
    char c;
    
    srand(static_cast<unsigned int>(time(0)));
    
    do
    {
        int x = rand() % n;
        std::cout << "Fraza ili citata: " << phrase[x];
        std::cout << "\nProdolzhit? (y/n)? ";
        std::cin >> c;
    }
    while (c == 'y');
    
    return 0;
}
0
AndLap
0 / 0 / 0
Регистрация: 29.04.2013
Сообщений: 9
28.06.2013, 14:02 #13
@Даниил1991, ну тогда прошу прощения просто лучше хранить так.
0
28.06.2013, 14:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2013, 14:02
Привет! Вот еще темы с ответами:

Нужно исправить код поиска смежных одинаковых элементов списка - C++
Задача:Пусть L обозначает кольцевой двунаправленный список с включенным заглавным звеном. Определить, есть ли в списке L хотя бы одно...

Нужно исправить код, чтобы элементы матрицы вводились с клавиатуры! - C++
Здравствуйте! Задание. Дана матрица размера МхN.Найти номер ее строки с наибольшей суммой элементов и вывести данный номер, а также...

Код написан в Dev C. Не работает в Visual. Как нужно переделать код? - C++
Здравствуйте. Столкнулась с такой проблемой: код был написан в Dev C, но в Visual он выдаёт ошибку. ...

Нужно исправить ошибку - C++
При выполнении задачи необходимо создать массив структуры(Person: Фамилия, Имя, Отчество, Адрес, Пол, Образование, Год рождения) , ввести...


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

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

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