Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 8

Где ошибка?

04.10.2012, 13:38. Показов 1715. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Программе подаются значения 15 переменных, она умножает каждое на 3 и делит на два. После все выводится.

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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
int main()
{
   соut << "Vvedite 15 peremennih" << endl;
   int q1;
   int q2;
   int q3;
   int q4;
   int q5;
   int q6;
   int q7;
   int q8;
   int q9;
   int q10;
   int q11;
   int q12;
   int q13;
   int q14;
   int q15;
   cin >> q1 >> endl;
   cin >> q2 >> endl;
   cin >> q3 >> endl;
   cin >> q4 >> endl;
   cin >> q5 >> endl;
   cin >> q6 >> endl;
   cin >> q7 >> endl;
   cin >> q8 >> endl;
   cin >> q9 >> endl;
   cin >> q10 >> endl;
   cin >> q11 >> endl;
   cin >> q12 >> endl;
   cin >> q13 >> endl;
   cin >> q14 >> endl;
   cin >> q15 >> endl;
   q1 = q1 * 3;
   q2 = q2 * 3;
   q3 = q3 * 3;
   q4 = q4 * 3;
   q5 = q5 * 3;
   q6 = q6 * 3;
   q7 = q7 * 3;
   q8 = q8 * 3;
   q9 = q9 * 3;
   q10 = q10 * 3;
   q11 = q11 * 3;
   q12 = q12 * 3;
   q13 = q13 * 3;
   q14 = q14 * 3;
   q15 = q15 * 3;
   q1 = q1 / 2;
   q2 = q2 / 2;
   q3 = q3 / 2;
   q4 = q4 / 2;
   q5 = q5 / 2;
   q6 = q6 / 2;
   q7 = q7 / 2;
   q8 = q8 / 2;
   q9 = q9 / 2;
   q10 = q10 / 2;
   q11 = q11 / 2;
   q12 = q12 / 2;
   q13 = q13 / 2;
   q14 = q14 / 2;
   q15 = q15 / 2;
   system("PAUSE");
   return 0;
}
P.S. Не судите строго, я до этого только в PHP писал.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.10.2012, 13:38
Ответы с готовыми решениями:

Вывести на экран количество слов где первая и последняя буквы одинаковы (не понимаю где ошибка)
задан текст нужно вывести на экран количество слов где первая и последняя буквы одинаковы #include &lt;iostream&gt; #include...

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

Ошибка при компиляции. Где ошибка? (Работа с классом)
Уважаемые форумчане! При компиляции проекта возникает ошибка &quot; undefined reference to `MeterNZiF::MeterNZiF()' &quot; на 7 строку...

25
 Аватар для David Sylva
1321 / 983 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
04.10.2012, 13:48
для начала переменные сделай так
int q1, q2, q3;

Ввод делай так
cin >> q1 >> q2 >> q3;
0
545 / 344 / 12
Регистрация: 05.11.2010
Сообщений: 1,076
Записей в блоге: 1
04.10.2012, 13:51
Индус detected?
0
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 8
04.10.2012, 13:52  [ТС]
Цитата Сообщение от David Sylva Посмотреть сообщение
для начала переменные сделай так
int q1, q2, q3;

Ввод делай так
cin >> q1 >> q2 >> q3;
Зачем? Так удобочитаемость кода падает.
0
 Аватар для David Sylva
1321 / 983 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
04.10.2012, 13:53
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream> 
 
int main() 
{ 
    const int size = 15; 
    int array[size]; 
    int i; 
 
    for ( i = 0; i < size; i++) 
    {
        std::cout << "Inter a number " << i+1 << " : " << std::endl; 
        std::cin >> array[i]; 
    } 
 
    for ( i = 0; i < size; i++) 
        std::cout << (array[i] * 3) / 2 << std::endl; 
     
}
0
545 / 344 / 12
Регистрация: 05.11.2010
Сообщений: 1,076
Записей в блоге: 1
04.10.2012, 13:58
Зачем? Так удобочитаемость кода падает.
Но ведь её не было изначально?) А как бы ты поступил, если бы тебе надо было 100 чисел ввести и сделать те же действия?
0
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 8
04.10.2012, 14:00  [ТС]
Цитата Сообщение от David Sylva Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream> 
 
int main() 
{ 
    const int size = 15; 
    int array[size]; 
    int i; 
 
    for ( i = 0; i < size; i++) 
    {
        std::cout << "Inter a number " << i+1 << " : " << std::endl; 
        std::cin >> array[i]; 
    } 
 
    for ( i = 0; i < size; i++) 
        std::cout << (array[i] * 3) / 2 << std::endl; 
     
}
#include <iostream> само собой, он есть в оригинальной программе, я его просто не перепечатывал.
Зачем создавать цикл? Зачем массив? Ведь так расходуются ресурсы ПК сильней. Гораздо оптимизированнее будет прописать каждую переменную отдельно и выполнять последовательно операции, т.к. так меньше надо памяти.
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
04.10.2012, 14:02
Цитата Сообщение от Герц Посмотреть сообщение
если бы тебе надо было 100 чисел ввести и сделать те же действия?
Зачем? В исходном варианте копипастить легче!


Добавлено через 1 минуту
Цитата Сообщение от Bodulay Посмотреть сообщение
Ведь так расходуются ресурсы ПК сильней.
Читать МакКоннелла го марш!
2
1406 / 648 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
04.10.2012, 14:02
Bodulay, 15 переменных это нифига не критично и даже 100000. Поэтому, просто не заморачивайся.
0
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 8
04.10.2012, 14:06  [ТС]
Цитата Сообщение от Герц Посмотреть сообщение
Но ведь её не было изначально?) А как бы ты поступил, если бы тебе надо было 100 чисел ввести и сделать те же действия?
Для таких случаев я использую ctrl+c + ctrl+v. А еще лучше, я думаю, использовать для написания каждой строчки программы, которые копируют строки с соответствующими изменениями.

Добавлено через 1 минуту
Цитата Сообщение от Deviaphan Посмотреть сообщение
Зачем? В исходном варианте копипастить легче!


Добавлено через 1 минуту

Читать МакКоннелла го марш!
МакКоннелла не уважаю, учился классике по книге самого создателя Pascal - Никлауса Вирта.

Добавлено через 1 минуту
Цитата Сообщение от Dani Посмотреть сообщение
Bodulay, 15 переменных это нифига не критично и даже 100000. Поэтому, просто не заморачивайся.
Программа тупо не работает. Я не знаю почему. Все перепробовал.
0
 Аватар для David Sylva
1321 / 983 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
04.10.2012, 14:14
Вот не ожидал я, что эта программа вызовет столько споров.
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
04.10.2012, 14:17
Цитата Сообщение от Bodulay Посмотреть сообщение
После все выводится.
Ну так ты вывод всего не написал же! Потому и не работает.
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
04.10.2012, 14:18
Bodulay, проблема в том, что при целочисленном делении как результат вы получаете целое число, т.е.
C++
1
2
3
int q = 5;
q *= 3; // q = 15
q >>= 2; // q = 7
А не 7.5, как вы ожидали. Используйте float или double и будет так, как вы ожидали.

PS. про циклы все-таки почитайте, а книги 20-30 летней давности, в которых пишутся такие вещи - лучше не читайте, т.к. паскаль - это не С/С++, современные компиляторы умеют оптимизировать код и мощность железа далека от той, которая была тогда. Да и после выхода паскаля архитектура ЦП менялась

ЗЫ. нормальный бы человек написал
C++
1
2
double q = 5;
q *= 1.5;
0
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 8
04.10.2012, 14:24  [ТС]
Цитата Сообщение от Deviaphan Посмотреть сообщение
Ну так ты вывод всего не написал же! Потому и не работает.
Вывод тоже имеется в исходной программе. Я просто его вырезал, иначе программа слишком длинная, не для первого поста в топике.

Добавлено через 2 минуты
Цитата Сообщение от M128K145 Посмотреть сообщение
Bodulay, проблема в том, что при целочисленном делении как результат вы получаете целое число, т.е.
C++
1
2
3
int q = 5;
q *= 3; // q = 15
q >>= 2; // q = 7
А не 7.5, как вы ожидали. Используйте float или double и будет так, как вы ожидали.

PS. про циклы все-таки почитайте, а книги 20-30 летней давности, в которых пишутся такие вещи - лучше не читайте, т.к. паскаль - это не С/С++, современные компиляторы умеют оптимизировать код и мощность железа далека от той, которая была тогда. Да и после выхода паскаля архитектура ЦП менялась

ЗЫ. нормальный бы человек написал
C++
1
2
double q = 5;
q *= 1.5;
Я знаю и рассчитывал на то, что деление округляется, ибо аналогов обероновских или паскалевских div и mod я не знаю.
У нас в деревне только-только интернет подрубили, скорость низкая, 32 кбит/с. Какие там книги про С/С++.
Насчет "q *= 1.5;": пробовал, но у меня почему-то идет "Ошибка переполнения". Да и к тому же, так удобнее.
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
04.10.2012, 14:37
Цитата Сообщение от Bodulay Посмотреть сообщение
пробовал, но у меня почему-то идет "Ошибка переполнения".
а какие данные вы вводите?
Цитата Сообщение от Bodulay Посмотреть сообщение
Насчет "q *= 1.5;": пробовал, но у меня почему-то идет "Ошибка переполнения". Да и к тому же, так удобнее.
так вы определитесь,
Цитата Сообщение от Bodulay Посмотреть сообщение
Зачем создавать цикл? Зачем массив? Ведь так расходуются ресурсы ПК сильней. Гораздо оптимизированнее будет прописать каждую переменную отдельно и выполнять последовательно операции, т.к. так меньше надо памяти.
или
Цитата Сообщение от Bodulay Посмотреть сообщение
так удобнее.
Ну а после продолжим
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
04.10.2012, 14:41
Цитата Сообщение от Bodulay Посмотреть сообщение
Ведь так расходуются ресурсы ПК сильней. Гораздо оптимизированнее будет прописать каждую переменную отдельно и выполнять последовательно операции, т.к. так меньше надо памяти.
я тебя уверяю, ты разницы не заметишь, даже если у тебя будет не пятнадцать переменных, а 100500. Зато программу с циклами и массивами вместо кучи переменных:
  • легче читать
  • легче отлаживать
  • легче изменять

Добавлено через 1 минуту
Цитата Сообщение от M128K145 Посмотреть сообщение
т.к. паскаль - это не С/С++, современные компиляторы умеют оптимизировать код и мощность железа далека от той, которая была тогда. Да и после выхода паскаля архитектура ЦП менялась
да и для Паскаля то, что я сказал выше, тоже верно
0
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 8
04.10.2012, 14:48  [ТС]
Ввожу все цифры от 1 до 15. Плюс ко всему, циклы и массивы едят больше памяти и приводят к нечитаемости кода, я это уже писал.
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
04.10.2012, 15:26
Цитата Сообщение от Bodulay Посмотреть сообщение
Плюс ко всему, циклы и массивы едят больше памяти
Насколько больше? На 20 байт на программу?

Цитата Сообщение от Bodulay Посмотреть сообщение
и приводят к нечитаемости кода, я это уже писал.
Знаешь, а весь остальной мир считает иначе.
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
04.10.2012, 15:38
Цитата Сообщение от Bodulay Посмотреть сообщение
Плюс ко всему, циклы и массивы едят больше памяти и приводят к нечитаемости кода, я это уже писал.
как раз наоборот. в 5 сообщении я за один взгляд понимаю, что делает код, в первом же мне надо посмотреть переменные, отследить их правильность, необходимо так же скроллить код, так как половину я просто не вижу, а вторую вы вырезали для того, чтобы уменьшить длину листинга
0
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 8
04.10.2012, 16:06  [ТС]
Цитата Сообщение от Nameless One Посмотреть сообщение
Насколько больше? На 20 байт на программу?


Знаешь, а весь остальной мир считает иначе.
И где, собственно, Ваш остальной мир? Программисты Индии? И вообще, каждый байт имеет цену. Ваши циклы и массивы - заговор Intel и AMD. Они специально сделали так, что все, такие как Вы, не считали байты и нуждались в более мощных вычислительных системах, которые Intel и AMD охотно предоставляет. А ведь они едят больше электричества. Стоят больше денег. На самом деле, если бы не ваши свистелки и перделки, на подобии циклов и массивов, все бы до сих пор нормально, без проблем, кодили на 4004-ых.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.10.2012, 16:06
Помогаю со студенческими работами здесь

Укажите где ошибка (ошибка во время выполнения программы)
Здравствуйте, помогите пожалуйста найти ошибки в коде которые возникаю при выполнении программы Картинка с ошибкой внизу поста. Код: ...

В чём ошибка.В коде там где коментарий там ошибка поучается.
#include &lt;iostream&gt; #include &lt;Windows.h&gt; using namespace std; class CMyString{ char *pStr; public: ...

Где ошибка ?
Задача такая Вычислить сумму n слагаемых s=((1)/(2*3))+((2)/(3*4))+....+((n)/(n+1)*(n+2)) я написал программу , но она выдает ошибки ! ...

Где ошибка?
Программа не моя,но нужно запустить ее и показать что она работает. Но в том то и проблема что не запускается) помогите определить где...

Где ошибка ?
Даны числа x и n . Вычислить S=sin(x)+sin(sin(x))+.....+sin(sin....sin(x)). n Моя...


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

Или воспользуйтесь поиском по форуму:
20
Закрытая тема Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение/ Перевод https:/ / **********/ gallery/ thinkpad-x220-tablet-porn-gzoEAjs . . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru