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

Как заполнить целочисленный массив введя с клавиатуры строчку из чисел

20.12.2010, 10:48. Показов 14393. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Взялся за изучение с++, столкнулся с проблемой, не могу понять как заполнить целочисленный массив введя с клавиатуры просто строку? Я понимаю, как заполнить скажем вот так:
C++
1
2
3
4
5
int array[20];
          for (int i = 0; i < 20; i++) {
            cout << "Enter the " << i + 1 << " element" << endl;
            cin >> array[i];
          }
Но это мягко говоря изврат. Есть ли какой нибудь стандартный способ или надо писать захват строки разбор по символам и запись в этот массив самостоятельно?
ЗЫ: поиск поюзал, ничего толкового не нашел(
ЗЗЫ: да и можно ли как нибудь выводить на экран все элементы массива строчкой кроме как:
C++
1
2
3
for (int i = 0; i < 20; i++) {
            cout << array[i];
          }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.12.2010, 10:48
Ответы с готовыми решениями:

Заполнить целочисленный массив не вводя значения с клавиатуры
Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры, следующим образом: (0000000000) (0100000000) ...

Заполнить одномерный целочисленный массив a числами, введёнными с клавиатуры
Заполнить одномерный целочисленный массив a числами, введёнными с клавиатуры в поле Memo1. Получить новый массив b, ...

Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры
C# Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры, следующим образом: 1 3 4 10 11 21 2 ...

14
Шаровик затейник
 Аватар для Crudelis
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
20.12.2010, 11:12
1. Если влом вводить массив руками как у вас в примере, а другого метода ввода массива через строчку я например не знаю, заполняйте массив случайными числами.
2. Массив выводиться так как вы написали и никак по другому.
0
1 / 1 / 0
Регистрация: 20.12.2010
Сообщений: 62
20.12.2010, 11:23  [ТС]
Crudelis, дело в том, что это строчка потом будет mac-адресом и потом мне нужно будет с ним работать, сравнивать с другими, поэтому случайные числа тут никак не работают. Я попытался брать string и потом поэлементно копировать в мой массив, работать отказалось У меня есть в голове одна идея как это сделать, но она мне кажется корявой и я надеялся, что есть какие то решения поизящнее.
0
Шаровик затейник
 Аватар для Crudelis
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
20.12.2010, 11:38
хочу заметить что mac адрес это не целочисленный массив, там есть как числа так и буквы, думаю для вас это понятно, я к чему, через массив int mass[n] сделать не получиться, здесь нужны строки
0
1 / 1 / 0
Регистрация: 20.12.2010
Сообщений: 62
20.12.2010, 11:43  [ТС]
Crudelis, я это помню... Пожалуй в моем случае все же надо делать как изначально думал. Но все же я хочу разобраться, можно ли целочисленный массив заполнить строчкой, введенной с клавиатуры и как это вообще сделать
0
 Аватар для deadlock
378 / 358 / 23
Регистрация: 14.12.2010
Сообщений: 1,265
20.12.2010, 11:50
так а в чем проблема ввести 6 hex чисел через ":" (для удобства восприятия, можно и сплошняком), потом сравнивать эту строку через strcmp с другой такой же, либо убрав разделитель ":" преобразовать в число и сравнивать с другим числом.
0
 Аватар для kazak
3602 / 2743 / 355
Регистрация: 11.03.2009
Сообщений: 6,302
20.12.2010, 11:51
Читерство, конечно, но:
C++
1
2
3
for (int i = 0; i < 20; i++) {
            cin >> array[i];
          }
Вводишь числа через пробел.
0
1 / 1 / 0
Регистрация: 20.12.2010
Сообщений: 62
20.12.2010, 12:01  [ТС]
deadlock, пробовал преобразовывать, но int в себя может вместить максимум 7fffff кажется, точно не помню, помню что остается большой диапазон значений не вмещающихся, который нормально нормально не обрабатывается, как это победить тоже не знаю, хотел хранить их как массивы и сравнивать поэлементно. Да и разве strcmp может выдать результат, что одно больше чем другое?

kazak, читерство не наш метод)
0
 Аватар для deadlock
378 / 358 / 23
Регистрация: 14.12.2010
Сообщений: 1,265
20.12.2010, 12:02
int весит 4 байта, mac адрес 6 байт. но никто тип long long пока не отменял )))) он 8 байт
0
1 / 1 / 0
Регистрация: 20.12.2010
Сообщений: 62
20.12.2010, 12:05  [ТС]
deadlock, у меня в книжке написано что long и int ожно и тоже и весят оба по 4 байта. 8 байт весит double, но оно мне выдавало результат в виде 1.8E300, а как посмотреть в человеческом виде я не понял.
0
 Аватар для deadlock
378 / 358 / 23
Регистрация: 14.12.2010
Сообщений: 1,265
20.12.2010, 12:08
малыш, не верь всем книжкам. открой стандарт C99, где написано: тип данных long long int занимает 64 бита.
а double - это вообще для вещественных чисел
1
1 / 1 / 0
Регистрация: 20.12.2010
Сообщений: 62
20.12.2010, 12:10  [ТС]
deadlock, не верил книжке проверил сам, но писал long int и оно совпадало с int'ом, а вот long long заработало спасибо
Но все же вопрос темы остается открытым)
0
 Аватар для deadlock
378 / 358 / 23
Регистрация: 14.12.2010
Сообщений: 1,265
20.12.2010, 12:11
так проблема то в чем? нужно маки сравнить? или проблема ввести?
0
1 / 1 / 0
Регистрация: 20.12.2010
Сообщений: 62
20.12.2010, 12:20  [ТС]
deadlock, ну теперь меня это просто заусило, я хочу разобраться, воедь как то же можно это сделать.
Вообще задача стоит написать имитатор работы STP, просто поскольку я С++ вообще не изучал я стал его осваивать, а в качестве тренировочных задач беру, то что буду использовать в итоге в конечной программе. В общем, пока про мак и все такое забудем, есть целочисленный массив и есть необходимость его заполнить строчкой из клавиатуры.
0
 Аватар для kazak
3602 / 2743 / 355
Регистрация: 11.03.2009
Сообщений: 6,302
20.12.2010, 12:36
Цитата Сообщение от Woody-krsk Посмотреть сообщение
есть целочисленный массив и есть необходимость его заполнить строчкой из клавиатуры.
Самый оптимальный вариант работать со строкой, потом переводить в числа.


Цитата Сообщение от deadlock Посмотреть сообщение
открой стандарт C99, где написано: тип данных long long int занимает 64 бита.
https://www.cyberforum.ru/faq/thread190093.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.12.2010, 12:36
Помогаю со студенческими работами здесь

Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры
00100 00100 11111 00100 00100 Я делаю следующим образом: { int a = new int;

Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры
Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры, следующим образом: 11111 00100 11111 00100 ...

Ступенчатые массивы: Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры
Добрый вечер. Прошу помочь с заданием по теме ступенчатых массивов. Заполнить целочисленный массив А, не вводя значения его элементов с...

Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры, следующим образом:
Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры, следующим образом: 11111 01110 00100 01110 ...

Заполнить целочисленный массив А, не вводя значения его элементов с клавиатуры, особым образом
1 1 1 1 1 1 2 3 4 5 1 3 6 10 15 1 4 10 20 35 1 5 15 35 70


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru