Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Wczytywanie tekstu w formie wierszy i kolumn

Ostatnio zmodyfikowano 2014-06-22 16:39
Autor Wiadomość
00Andre
» 2014-06-12 20:49:07
To każdej chwili można zmienić czy na wyczytanie, czy na normalną tablice, nie ma problemu. Czemu według ciebie 2/3 to nie ma sensu ? I czemu
!plik.eof()
 nie jest poprawne ?
P-112005
pekfos
» 2014-06-12 20:53:42
Czemu według ciebie 2/3 to nie ma sensu ? I jak mam określić ilość lin zapełnionych zapisanych w pliku ?
Np prawie tak, jak zrobiłeś. Tylko nigdzie nie używasz tej wartości. Stąd 2/3 samego fora jest bez sensu, a resztę można zapisać w while.
P-112007
00Andre
» 2014-06-12 20:56:06
Jak nie używam ? To po co to wyczytałem do vector'a typu string ? Po to aby potem każdy znak przydzielić do tablicy dwuwymiarowej typu char, jeśli bym jakieś nie używał to bym jej nie deklarował ;)

// Edit A to czy pętla for czy while to zależy od każdego innego, mi bardziej jest wygodniej używać pętle  for niż while, a po for to do..while ;)
P-112008
pekfos
» 2014-06-12 21:04:29
A to czy pętla for czy while to zależy od każdego innego, mi bardziej jest wygodniej używać pętle  for niż while
Nawet jak piszesz bez sensu, to jest wygodniej niż z sensem?
C/C++
for( unsigned a = 0; !plik.eof(); a++ )
Gdzie używasz tego a..?
P-112010
00Andre
» 2014-06-12 21:15:23
Nie używam tego a, a ta zmienna jest dla tylko pętli a potem jej nie ma, więc nie wiem po co się przejmować, oczywiście mogłem to lepiej napisać, ale , że ja użyłem zmienną a w petli for i jej nie używam to jest wielki problem ...
P-112013
MrKreistos
Temat założony przez niniejszego użytkownika
» 2014-06-16 23:27:45
Ja mam jeszcze bardziej zagmatwane. To jest już cały program z wykorzystaniem stringów, ale
[Error] ld returned 1 exit status
więc prosiłbym o przejrzenie kodu.
C/C++
#include<iostream>
#include <conio.h>
#include<cstdlib>
#include<string>
#include<cstring>

using namespace std;

int change( string text, string klucz, string szyk, int length1, int length2 );
char numer( char text, char klucz );
int liczba( int znak );
char litera( int znak );


/********************************************************/
using namespace std;
int main()
{
    using namespace std;
    string klucz;
    int length1;
    cout << "podaj klucz: ";
    getline( cin, klucz );
    length1 = klucz.length();
   
    string szyk;
    cout << "podaj szyk: ";
    cin >> szyk;
   
    string text;
    int length2;
    cout << "podaj tekst: ";
    getline( cin, text );
    length2 = text.length();
   
    cout << text;
   
    change( text, klucz, szyk, length1, length2 );
   
    system( "pause" );
    return 0;
}

//*******************************************************

int change( string text, string klucz, int szyk[], int length1, int length2 )
{
    char output1[ length2 ];
    char output2[ length2 ];
    short int numer_klucza = 0;
    for( int i = 0; i < length2; i++ )
    {
        output1[ i ] = text[ i ];
        numer_klucza = i % length1;
        output2[ i ] = numer( output1[ i ], klucz[ i % length1 ] );
        cout << output2;
    }
    return 0;
}

//*******************************************************

char numer( char text, char klucz ) //dodaje do siebie wartosci liczbowe przypisane do danych liter w kluczu i tekscie
{
    int numer;
    numer = liczba( text ) + liczba( klucz );
   
    return numer;
}

//*******************************************************

int liczba( char znak ) //zamienia znak w char na liczbe od 0 do 26(caly alfabet)
{
    int liczba;
    switch( znak )
    {
    case 32:
        liczba = 0;
        break;
    case 97:
        liczba = 1;
        break;
    case 98:
        liczba = 2;
        break;
    case 99:
        liczba = 3;
        break;
    case 100:
        liczba = 4;
        break;
    case 101:
        liczba = 5;
        break;
    case 102:
        liczba = 6;
        break;
    case 103:
        liczba = 7;
        break;
    case 104:
        liczba = 8;
        break;
    case 105:
        liczba = 9;
        break;
    case 106:
        liczba = 10;
        break;
    case 107:
        liczba = 11;
        break;
    case 108:
        liczba = 12;
        break;
    case 109:
        liczba = 13;
        break;
    case 110:
        liczba = 14;
        break;
    case 111:
        liczba = 15;
        break;
    case 112:
        liczba = 16;
        break;
    case 113:
        liczba = 17;
        break;
    case 114:
        liczba = 18;
        break;
    case 115:
        liczba = 19;
        break;
    case 116:
        liczba = 20;
        break;
    case 117:
        liczba = 21;
        break;
    case 118:
        liczba = 22;
        break;
    case 119:
        liczba = 23;
        break;
    case 120:
        liczba = 24;
        break;
    case 121:
        liczba = 25;
        break;
    case 122:
        liczba = 26;
        break;
    }
    return liczba;
}

//*******************************************************

char litera( int znak ) //zamienia numer na znak w char
{
    char litera;
    switch( znak )
    {
    case 0:
        litera = 32;
        break;
    case 1:
        litera = 97;
        break;
    case 2:
        litera = 98;
        break;
    case 3:
        litera = 99;
        break;
    case 4:
        litera = 100;
        break;
    case 5:
        litera = 101;
        break;
    case 6:
        litera = 102;
        break;
    case 7:
        litera = 103;
        break;
    case 8:
        litera = 104;
        break;
    case 9:
        litera = 105;
        break;
    case 10:
        litera = 106;
        break;
    case 11:
        litera = 107;
        break;
    case 12:
        litera = 108;
        break;
    case 13:
        litera = 109;
        break;
    case 14:
        litera = 110;
        break;
    case 15:
        litera = 111;
        break;
    case 16:
        litera = 112;
        break;
    case 17:
        litera = 113;
        break;
    case 18:
        litera = 114;
        break;
    case 19:
        litera = 115;
        break;
    case 20:
        litera = 116;
        break;
    case 21:
        litera = 117;
        break;
    case 22:
        litera = 118;
        break;
    case 23:
        litera = 119;
        break;
    case 24:
        litera = 120;
        break;
    case 25:
        litera = 121;
        break;
    case 26:
        litera = 122;
        break;
    }
    return litera;
}

W miarę możliwości tłumaczcie łopatologicznie bo nie jestem jakoś zbyt zaawansowany w cpp.
P-112179
Glazus
» 2014-06-17 14:46:49
Nie używam tego a, a ta zmienna jest dla tylko pętli a potem jej nie ma, więc nie wiem po co się przejmować, oczywiście mogłem to lepiej napisać, ale , że ja użyłem zmienną a w petli for i jej nie używam to jest wielki problem ...
Więc po co jej użyłeś? Każda zmienna zajmuje pamięć, każda operacja na zmiennej zajmuje czas. A Ty tworzysz zmienną której nawet nie używasz i jeszcze na niej operujesz (
a++
).

Nie po to powstawały różne funkcje, byś do wszystkiego wykorzystywał
for
. Forem możesz zastąpić na dobrą sprawę także
if
 i inne - pytanie po co?

Jak to powiedział kiedyś jeden z moich prowadzących (przedmiot zupełnie z programowaniem niezwiązany, ale myśl w każdej inżynierskiej dziedzinie dobra) "po co tworzyć byty niepotrzebne?".
P-112189
pekfos
» 2014-06-21 15:46:40
[Error] ld returned 1 exit status
To jedyny błąd..? Z całego zbioru błędów podałeś ten najbardziej bezużyteczny, brawo.
P-112463
1 « 2 » 3
Poprzednia strona Strona 2 z 3 Następna strona