Mam pytanie może banalne : jak wczytac liczby z klawiatury do tablicy oddzielone spacjami?
Jest różna ilość liczb.
[c++] wczytywanie do tablicy
[c++] wczytywanie do tablicy
Po prostu wczytujesz
std::cin
em kolejne liczby. Nic więcej nie trzeba robić.-
- Użytkownik
- Posty: 874
- Rejestracja: 4 paź 2010, o 08:16
- Płeć: Mężczyzna
- Lokalizacja: wszedzie
- Podziękował: 248 razy
- Pomógł: 10 razy
[c++] wczytywanie do tablicy
chodzi mi o to zeby wczytac liczby do tablicy i po nacisnieciu entera wyswietlic te liczby, problem w tym ze nie wiem ile jest liczb wczytanych
- JakimPL
- Użytkownik
- Posty: 2401
- Rejestracja: 25 mar 2010, o 12:15
- Płeć: Mężczyzna
- Lokalizacja: Katowice
- Podziękował: 43 razy
- Pomógł: 459 razy
[c++] wczytywanie do tablicy
Jeżeli chodzi Ci o parsowanie ciągu liczb w jednej linii, to można to wykonać z użyciem \(\displaystyle{ \rm{sstream}}\).
Jeżeli byś chciał wczytywać ciągi znaków, wystarczy określić funkcję jako \(\displaystyle{ \rm{string}}\) oraz to samo ze zmienną wyniku (\(\displaystyle{ \rm{result}}\)).
Kod: Zaznacz cały
#include <string>
#include <iostream>
#include <sstream>
using namespace std;
double parse(string line)
{
stringstream ss(line);
string word;
double result;
unsigned int n = 0;
while (ss >> word)
{
istringstream ins;
ins.str(word);
ins >> result;
cout << result << endl;
n++;
}
return result;
}
int main()
{
cout << "Wprowadz liczby oddzielone spacja:" << endl;
string input;
getline(cin, input);
cout << "Rozdzielone liczby:" << endl;
parse(input);
return 0;
}