Member 14081190 Ответов: 5

Как я могу заставить этот код работать?


Всем Привет!

Как я могу заставить этот код работать (см. ниже)

Спасибо! :-)

Что я уже пробовал:

#include <iostream>
использование пространства имен std;

тап_п()
{

int n, числа;

cin >> n;

cin >> номера[n]

}

5 Ответов

Рейтинг:
29

OriginalGriff

Две вещи:
1) Мы не можем сказать вам, так как понятия не имеем, что он должен был делать! Так что мы понятия не имеем, что именно именно так это "работа" должна быть такой!
2) есть два этапа, чтобы "заставить код работать": первый-это избавление от ошибок компилятора; второй-избавление от ошибок времени выполнения.
Во - первых, вам нужно внимательно посмотреть на то, что выводит ваш компилятор-он обычно дает вам строку (или, по крайней мере, номер строки) и сообщение. В этом случае он, вероятно, жалуется на индексы массива и недопустимые типы, и это потому, что numbers это не массив, и вы не можете использовать индекс массива для "стандартного целого числа". Вы можете исправить это, выделив ряд целых чисел для чисел. Например:

int n, number[10];
выделит 10 целых чисел, так что вы можете использовать синтаксис массива:
cin >> numbers[n]
Будет работать немного лучше. Он все равно не будет компилироваться чисто, потому что вы забыли добавить завершающую точку с запятой в строку:
cin >> numbers[n];
будем делать все лучше. Но выделение всего лишь десяти целых чисел, вероятно, не будет хорошей идеей...

Теперь вы дошли до ошибок времени выполнения: для этого вам нужна чистая компиляция и использование отладчика - быстрый google найдет вам множество руководств по использованию отладчика Visual Studio, так что проверьте некоторые из них и попробуйте!


Рейтинг:
2

Richard MacCutchan

Начните с получения хорошей книги по C++. То, что вы написали, не имеет никакого реального смысла.


Рейтинг:
2

KarstenK

вам действительно нужно изучить основы C++, чтобы понять, что вы хотите сделать.

поваренная книга:
- прошу Н
- выделить буфер для чисел
- спросите n раз для ввода (цикл)
- делай, что хочешь.
- удалить числовые буферы

пожалуйста выучите язык ;-)


Рейтинг:
1

Rick York

Вспомните ответ, который я дал вам ранее. Вы не выделили память для чисел, и у вас нет цикла получения чисел. Без этих вещей этот код не сможет работать.


Рейтинг:
0

Patrice T

Цитата:
Как я могу заставить этот код работать

Как можно ответить на этот вопрос, если мы не знаем, что должен делать код?

Если n это не 0, код делает некоторое переполнение буфера, потому что вы используете numbers как массив.
Совет: найдите учебник и следуйте ему, чтобы изучить основы.

Вот ссылки на справочники книг по Си и Си++ авторов этих языков. Обратите внимание, что C является предком C++, поэтому знание C всегда полезно с C++.
Язык программирования Си - Википедия, свободная энциклопедия[^]
https://hassanolity.files.wordpress.com/2013/11/the_c_programming_language_2.pdf[^]
http://www.ime.usp.br/~ПФ/Керниган-Ритчи/с-Программирование-электронные книги.формат PDF[^]

Язык Программирования C++ [^]