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

palindrom - problem

Ostatnio zmodyfikowano 2013-05-29 17:54
Autor Wiadomość
Specur
Temat założony przez niniejszego użytkownika
palindrom - problem
» 2013-05-29 14:08:05
Witajcie !

chciałem napisać program który wejdzie do pliku wyszuka w nim palindromy i zapisze je w innym pliku.(typowe zadanie maturalne)...wklepałem taki kodzik i nie wiem w ktorym miejscu robie blad ;( potrafi ktos pomoc ?
C/C++
#include <iostream>
#include <string>
#include <fstream>
using namespace std;

bool odwroc_wyraz( string wyr, int a ) {
    string odwr;
    int s = a - 1;
    for( int i = 0; i < a; i++ ) {
        odwr += wyr[ s - i ];
    }
    for( int z = 0; z < a / 2; z++ ) {
        if( odwr[ z ] != wyr[ z ] ) {
            return false;
            break;
        }
    }
    return true;
}
void wypisz( string wyr, ofstream & zap ) {
    zap << wyr << endl;
}
main() {
    ifstream otwieracz;
    string wyraz_kolejny;
    otwieracz.open( "dane.txt" );
    ofstream zap;
    zap.open( "rozw.txt" );
    getline( otwieracz, wyraz_kolejny, '0' );
    if( odwroc_wyraz( wyraz_kolejny, wyraz_kolejny.length() ) == true )
         wypisz( wyraz_kolejny, zap );
   
   
   
    zap.close();
    otwieracz.close();
   
    return 0;
}
jestem noowy więc jak by jeszcze ktos mogl powiedziec jak estetycznie umieszczac moj kood na tym forum bylbym wdzieczny!
P-84256
pekfos
» 2013-05-29 14:46:58
A co nie działa?
P-84261
Specur
Temat założony przez niniejszego użytkownika
» 2013-05-29 15:11:12
program nie wykonuje czyności ktora ma wykonac . czyli nie zapisuje palindromow w nowo utworzonym pliku. kodzik sie normalnie kompiluje.
P-84263
pekfos
» 2013-05-29 15:16:48
C/C++
getline( otwieracz, wyraz_kolejny, '0' );
Po każdym słowie masz 0?
P-84264
Specur
Temat założony przez niniejszego użytkownika
» 2013-05-29 15:36:56
kazde słowo jest w osobnej lini

oto kawałek mojego pliku tekstowego :

BFDAFBCCGBDIIEDCJAACDF
ADFBJADEAJAAD
EFCCCEBFFCBABEAEBAFGC
HGCDCECECADBFCBAGH
BDAEDDAEIICFDEFAADEAF
CIEAEG
EFCDABCDDCDDB
EAGHFFIIC
EDFAJEA
AECBBIIEGAAJAAJCBJAFFC
EHGC
...
P-84265
pekfos
» 2013-05-29 15:45:18
Więc powinno być tak:
C/C++
getline( otwieracz, wyraz_kolejny );
P-84266
Specur
Temat założony przez niniejszego użytkownika
» 2013-05-29 15:47:21
probowałem tez nie działa .
P-84267
pekfos
» 2013-05-29 15:51:40
Pierwszy wyraz nie wygląda na palindrom, a w kodzie wczytujesz tylko tą linię.
P-84268
« 1 » 2
  Strona 1 z 2 Następna strona