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

Ввод нескольких значений в одной строке

06.03.2023, 19:50. Показов 3075. Ответов 8
Метки c++ (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <vector>
using namespace std;
 
int main() {
int count;
cin >> count;
vector<int> arr(count);
for (int i = 0; i < count; i++) {
cin >> arr[i];
}
vector<int> arrResult(count);
for (int i = 0; i < count; i++) {
arrResult[i] = arr[i] * 9 / 5 + 32;
}
for (int i = 0; i < count; i++) {
cout << arrResult[i] << " ";
}
return 0;
}
есть функция которая принимает количество операций от пользователя, кидает их в массив и далее для каждого элемента массива переводит значение из цельсия в фарнгейты, помогите ,пожалуйста, сделать так, что бы в одной строке сразу принимало количество значений для вычисления и сами значения. Т.е. cin >> 5(значений) 600 700 800 900 1000 и соответственно 5 значений для вычислений.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.03.2023, 19:50
Ответы с готовыми решениями:

Ввод нескольких переменных в одной строке
Всем здравствуйте. Не давно начал изучать питон и решил порешать задачи. И буквально на первой ошибка. Задача a+b. Условия такие (не смог...

Ввод нескольких переменных в одной строке
Добрый день. Можно ли сделать так, чтобы вместо списка вводилось 3 разных переменных, но в одной строке? Так не получается a, b, c =...

Проверка на содержания нескольких значений в одной строке
Всем доброго дня. помогите разобраться.. необходимо сделать проверку на содержание нескольких значений в строке. если не содержится, то...

8
И тут вот те нате
322 / 209 / 117
Регистрация: 12.07.2016
Сообщений: 555
06.03.2023, 20:17
Ввод и вывод с вашей программой без изменений:
Code
1
2
5 600 700 800 900 1000
1112 1292 1472 1652 1832
Добавлено через 3 минуты
Вводить значения можно как угодно: сразу все или по одному, да и вообще любыми порциями. Программа будет забирать символы из потока ввода ровно в тот момент, когда этого требует код ( cin >> ... ). Если в этот момент в потоке ввода есть достаточное количество символов, то они считываются. Если поток ввода пуст, а в программе встретилось cin >> ..., то выполнение остановится, пока пользователь не введет новые данные.
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12928 / 6796 / 1819
Регистрация: 18.10.2014
Сообщений: 17,197
06.03.2023, 22:05
Цитата Сообщение от Viktpkun Посмотреть сообщение
помогите ,пожалуйста, сделать так, что бы в одной строке сразу принимало количество значений для вычисления и сами значения
Так а почему вы решили, что для этого что-то надо "переписывать"?
0
0 / 0 / 0
Регистрация: 09.09.2018
Сообщений: 10
06.03.2023, 23:35  [ТС]
ну может я не так вызарился, я имел ввиду "что поменять"

Добавлено через 55 минут
да, действительно спасибо
0
Модератор
Эксперт С++
 Аватар для zss
13769 / 10962 / 6491
Регистрация: 18.12.2011
Сообщений: 29,238
07.03.2023, 07:50
Viktpkun, у Вас температура принимает только целочисленные значения.
Это получилось случайно? Или так было задумано?
Если нужна дробная часть, то vector<int> arr(count); нужно заменить на
C++
1
vector<double> arr(count);
а arrResult[i] = arr[i] * 9 / 5 + 32; желательно заменить на
C++
1
arrResult[i] = arr[i] * 9. / 5. + 32.;
Если нужно обработать значения введенные только в одной строке,
то n можно не вводить и обойтись без vector:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
 
int main() {
  double a;
  string s;
  getline(cin,s);
  istringstream SS(s);
  while(SS>>a){
      Result = a * 9. / 5. + 32.;
      cout << Result << " ";
  }
  return 0;
}
0
736 / 700 / 110
Регистрация: 29.05.2015
Сообщений: 4,267
07.03.2023, 09:47
Цитата Сообщение от Evgen173 Посмотреть сообщение
Ввод и вывод с вашей программой без изменений
Как получилось, что ввод в одну строчку? Сперва выполняется "cin >> count;" - программа ждёт ввода числа, окончание ввода - энтер, и прога перескакивает на следующую строчку. Или пробел вместо энтера проканает? А умный cin сам распарсит строку из чисел и пробелов?
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12928 / 6796 / 1819
Регистрация: 18.10.2014
Сообщений: 17,197
07.03.2023, 10:09
Лучший ответ Сообщение было отмечено zss как решение

Решение

Цитата Сообщение от alexu_007 Посмотреть сообщение
А умный cin сам распарсит строку из чисел и пробелов?
"Умный cin" парсит поток из "значений", разделенных пробельными символами. Пробельными символами являются: пробел, перевод строки, возврат каретки, горизонтальная табуляция, вертикальная табуляция, перевод станицы (см. std::isspace).

Поэтому чем будут разделяться значения: переводом строки, пробелами или вообще винегретом из вышеупомянутых символов - "умному cin" глубоко все равно.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6136 / 2830 / 1039
Регистрация: 01.06.2021
Сообщений: 10,318
07.03.2023, 12:14
Цитата Сообщение от zss
9. / 5.
что будет, если написать сразу 1.8 ?
0
Модератор
Эксперт С++
 Аватар для zss
13769 / 10962 / 6491
Регистрация: 18.12.2011
Сообщений: 29,238
07.03.2023, 13:38
Цитата Сообщение от Royal_X Посмотреть сообщение
если написать сразу 1.8
Не видно будет формулу преобразования
https://www.cyberforum.ru/cgi-bin/latex.cgi?F=\frac{9}{5}C+32
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.03.2023, 13:38
Помогаю со студенческими работами здесь

Ввод двух значений в одной строке
Как объединить 14 и 15 строку? using System; using System.Linq; using System.Collections.Generic; using System.Collections; using...

Написать программу, которая обеспечивает ввод значений дробных переменных (типа float) u и r. Предполагается, что пользователь будет набирать числа в одной строке.
Немного непонятная задачка. Тут пользователь может вводить данные &quot;значение пробел значение&quot; (ReadLine используется один раз), либо...

Ввод нескольких массивов одной функцией
Здравствуйте! Есть задача: сделать ввод нескольких одномерных массивов (размера n) одной функцией. Ума не приложу как это можно сделать. ...

Ввод нескольких значений
Ввожу в richtextbox значения через запятую. Как сделать, чтобы в дальнейшем программа воспринимала каждую цифру как отдельное значение?

Ввод нескольких значений
Простите возможно за глупый вопрос,но не могу вот чего понять. Как написать программу, например(которая просит ввести какое то число и...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
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 - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru