- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- GoodSpeed: Samsung 980 PRO 1TB M.2 (MZ-V8P1T0BW) vs Samsung 990 PRO 2TB M.2 (MZ-V9P2T0BW)
- Magga: PLEX: multimédia az egész lakásban
- Gurulunk, WAZE?!
- Parci: Milyen mosógépet vegyek?
- ldave: New Game Blitz - 2025
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
Új hozzászólás Aktív témák
-
b.kov
senior tag
válasz
#74220800 #3893 üzenetére
Üdv!
Nem egy kezdőszelet, de ha tanulod a nyelvet, előbb-utóbb úgyis el fogod hagyni a tömböket valószínűleg, és helyette stl konténereket, és algoritmusokat fogsz használni.Itt van egy gyors szösszenet C++11-es módszerrel a problémádra:
#include <iostream>
#include <vector>
#include <fstream>
#include <sstream>
#include <iterator>
#include <algorithm>
// Returns a matrix (N x M), storing read data from file
std::vector<std::vector<int32_t>> readData(std::string fileName)
{
// Open file
std::ifstream input;
try
{
input.open(fileName);
}catch(std::ios_base::failure& e)
{
std::cerr << e.what() << std::endl;
return std::vector<std::vector<int32_t>>();
}
std::string line; // For reading line by line
input >> line; // Reading N
std::vector<std::vector<int32_t>> result(std::stoi(line)); // Returnable vector
std::getline(input, line); // Reading M, but do not store
// Write from file to matrix
for(auto& matrixLine : result)
{
std::getline(input, line);
std::istringstream stringOfNumbers(line); // Split line into individual strings
// Perform a transform for storing string chunks as integers in line of matrix
std::transform(std::istream_iterator<std::string>(stringOfNumbers),
std::istream_iterator<std::string>(),
std::back_inserter(matrixLine),
[](const std::string& stringOfNumber)
{
return std::stoi(stringOfNumber);
});
}
return result;
}
int main(int argc, char** argv)
{
std::vector<std::vector<int32_t>> result = readData("input.txt");
// Writing the output into stdout
for(auto line : result)
{
for(auto elem : line)
{
std::cout << elem << ", ";
}
std::cout << std::endl;
}
return 0;
}Természetesen nem teszteltem teljes körűen, csak egyetlen bemenetre, de arra működött.
input.txt:
5 7
2 3 4 -4 3 1 0
-3 2 1023 3 -32 8 9
-2 1 0 22 3 4 93
5 3 8 2 -9 3 -9321
2 3 4 -4 3 1 0
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Fejhallgató erősítő és DAC topik
- Windows 11
- TCL LCD és LED TV-k
- Merevlemezek megbízhatósága, élettartama
- Motoros topic
- Autós topik látogatók beszélgetős, offolós topikja
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Melyik tápegységet vegyem?
- Androidos fejegységek
- Formula-1
- További aktív témák...
- REFURBISHED - DELL Thunderbolt Dock WD19TBS docking station (210-AZBV)
- DOKKOLÓ BAZÁR! Lenovo, HP, DELL és egyéb más dokkolók (TELJES SZETTEK)
- GYÖNYÖRŰ iPhone 13 Pro 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS2980
- Lian Li HydroShift LCD 360R/TL AIO vízhűtés eladó!
- Azonnali készpénzes Microsoft XBOX Series S és Series X felvásárlás személyesen/csomagküldéssel
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest