vector wczytywanie liczb wierszami po 3 liczby

Odpowiedz Nowy wątek
2014-12-14 12:06
0

mam do wczytania liczby do vectora w jednym wierszu sa 3 liczby oddzielone spacjami np.
0.022 0.10 2.120
133.0 1.0 22.0
probuje je wczytac do vectora tpyu float ale niestety zawsze wczytuje mi pierwsza liczbe z wiersza. Jest jescze jeden problem nieznana zgory liczba wierszy napisalem taki kod prosze o jakieś sugestie.

#include <iostream>
#include <vector>
#include <sstream>
 
using namespace std;
 
int main()
{
    vector <string> tab;
    vector <float> tab1;
    string line;
    float tmp;
    stringstream ss;
    int ilosc=1,sp=0;
 
   while(getline(cin,line).good() && !line.empty())
    {
        ss<<line;
        ss>>tmp;
        tab1.push_back(tmp);
 
    }
 
    return 0;
}
 

Pozostało 580 znaków

2014-12-14 12:16
2
#include <iostream>
#include <algorithm>
#include <iterator>
#include <vector>
 
int main() {
  std::vector<float> foo;
  std::copy(std::istream_iterator<float>(std::cin), std::istream_iterator<float>(), std::back_inserter(foo));
 
  // albo tak
  std::vector<float> bar(std::istream_iterator<float>(std::cin), std::istream_iterator<float>());
  return 0;
}
edytowany 1x, ostatnio: satirev, 2014-12-14 12:19

Pozostało 580 znaków

2014-12-14 12:17
1

o_O

   while(getline(cin,line).good() && !line.empty())
    {
        ss<<line;
        for(int i=0;i<3;i++){
            ss>>tmp;
            tab1.push_back(tmp);
        }
    }

Na PW przyjmuje tylko (ciekawe!) zlecenia. Masz problem? Pisz na forum, nie do mnie.
edytowany 1x, ostatnio: Shalom, 2014-12-14 12:18

Pozostało 580 znaków

2014-12-14 16:57
#include <iostream>
#include <vector>
using namespace std;
 
int main()
  {
   vector<double> tab;
   for(double a,b,c;cin>>a>>b>>c;)
     {
      tab.push_back(a);
      tab.push_back(b);
      tab.push_back(c);
     }
    return 0;
  }

Z tym że prawie na 100% nie potrzebujesz gromadzić tych danych, ponieważ wszelakie sprawdzarki oddzielają wejście od wyjścia.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0