2D array

Status
Niet open voor verdere reacties.

stykurgh

Gebruiker
Lid geworden
6 jul 2009
Berichten
715
Hallo,

Ik ben een proggramma aan het maken en ik wil hier graag een 2D array voor gebruiken. Ik heb het nodig om tekst in te zetten. De tekst wordt in het begin door de gebruiker in de array gezet. Alleen als de array niet helemaal gevuld is bijvoorbeeld je hebt een array van 4 bij 3 maar als je dan maar 2 letters in de laatste rij zet ipv 3 en ik cout die rij dan staat er helemaal niks. Iemand een idee hoe dit kan en hoe dit anders kan?

Met vriendelijke groet,

Michel
 
Gebruik je C++?
Dan zou ik tekst gewoon in std::strings zetten.
Als je dan meerdere regels in wil lezen kun je een vector van strings bijhouden.

[CPP]
#include <string>
#include <vector>
#include <iostream>

using namespace std;

int main() {
vector<string> tekst;
string regel;

getline(cin, regel);
tekst.push_back(regel);

for(vector<string>::const_iterator i = tekst.begin(); i != tekst.end(); ++i) {
cout << *i;
}
}
[/CPP]
 
Laatst bewerkt:
dat gaat denk ik niet, ik wil namelijk iets maken voor tekst encryption, het idee is je hebt een keyword en die breedte gebruik ik dan om de tekst in te zetten. Bijvoorbeeld bij een woord van 5 letters, is de breedte van de array 5 en dan op de 2 regel wordt de tekst gezet en dan regel voor regel tot alles er in staat. Alleen als je dan een tekst hebt van 29 letters en je cout de laatste regel dan pakt hij die niet.
 
Je hebt dus duidelijk zelf iets gemaakt, en het ziet er hier naar uit dat er ergens een teller of een vergelijking een one-off heeft.

Zonder code wordt het echter moeilijk om je specifieker verder te helpen.
 
bij deze de code:

Code:
#include <iostream>

#include <string>

#include <cmath>







using namespace std;



string key_een = "samsung";

int x = key_een.length();

string text;

int pos =0;

int text_length,rows,rowss,over,erbij;

unsigned int found_pos;

string space = " ";



int main(){



cout << "voer tekst in om te encrypten, minimaal 10 characters lang\n";

cin >> text;



text_length = (text.length());





rowss = (text_length / x)+1;

char encryption[rowss][x];



for (int a =0; a < x; a++){

encryption[0][a] = key_een.at(a);

}







for (int row =1; row < rowss; row++){

   for (int col=0; col<x; col++) {

    encryption[row][col] = text.at(pos);

    pos ++;



}

}



for (int row =0; row < rowss; row++){

   for (int col=0; col <x; col++) {

    cout << encryption[row][col];



}

cout <<  "\n";

}





return 0;



}
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan