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

Tekst do znaku w jednej tablicy po znaku w drugiej

Ostatnio zmodyfikowano 2014-03-29 14:35
Autor Wiadomość
wojownik266
Temat założony przez niniejszego użytkownika
Tekst do znaku w jednej tablicy po znaku w drugiej
» 2014-03-28 18:55:02
Czy ktoś mógłby podrzucić pomysł jak wczytać tekst np. taki jak ten: "mama - tata" do dwóch różnych zmiennych. Chodzi mi o wpisanie słowa znajdującego się  przed "-" do jednej zmiennej a po "-" do drugiej zmiennej. Niby proste ale jakoś nie mogę temu dać rady. Poniżej moja próba:

C/C++
#include <iostream>
using namespace std;

int main()
{
    char pol[ 100 ], ang[ 100 ];
    char text[ 100 ];
    cout << "Podaj tekst ze - :";
    while( cin.getline( text, 100 ) )
    {
        for( int i = 0; i < 100; ++i ) {
            if( text[ i ] == '-' ) {
                pol[ i ] = text[ i ];
                cout << pol[ i ] << endl;
            }
           
        }
    }
    cin.get();
    return 0;
}
P-107334
SeaMonster131
» 2014-03-28 19:27:54
Można w ten sposób np:
C/C++
string a, b;
char znak;

cin >> a >> znak >> b;
P-107342
alixir
» 2014-03-28 19:40:00
Chyba, że zarówno po lewej stronie jak i po prawej stronie mamy więcej niż jeden wyraz. Wtedy można zastosować mały myk z języka C

scanf( "%[^-]%*c%[^\n]", & pol, & ang );
P-107346
wojownik266
Temat założony przez niniejszego użytkownika
» 2014-03-28 19:41:14
Te dane które muszę wczytać do zmiennych są takiej struktury: człon1 - człon2... Te dane muszę wczytać z pliku tekstowego. Będzie ich około 1000. Jakieś sugestie? Please! 
P-107347
alixir
» 2014-03-28 19:44:19
W tym przypadku przykład SeaMonster zda egzamin.
P-107349
wojownik266
Temat założony przez niniejszego użytkownika
» 2014-03-29 14:35:40
Trochę pomyślałem. Trochę podumałem i napisałem prawie to co chciałem... Aby przetestować program należy przygotować plik z danymi o na przykład takiej strukturze:

first - pierwszy
second - drugi
itd.

Program wpisze do pliku (zmiennej) wszystkie słowa znajdujące się przed znakiem "-" a po znaku zignoruje. Czyż to nie jest piękne? Co prawda nie jest to to co  dokładnie chciałem osiągnąć ale jak na razie muszę się tym zadowolić.... Program jest mi potrzebny do przetwarzania, zeskanowanego słownika angielsko-polskiego do pliku tekstowego i po niewielkich zmianach w kodzie źródłowym do oddzielenia słówek angielskich od polskich a następnie przy użyciu programu "Ivona" do ich udźwiękowienia. Jak widać na razie jest to tylko śmieszny projekt ale kto wie co z niego urośnie? No nie? 

C/C++
#include <iostream>
#include <string>
#include <fstream>
using namespace std;

int main()
{
    ifstream in( "zwroty.txt" );
    ofstream out( "podz.txt" );
    char a[ 1000 ];
    char b[ 1000 ];
    int s = 0;
    while( in.getline( a, 1000 ) && !( in.eof() ) ) {
        for( int i = 0; i < 1000; ++i )
        if( a[ i ] == '-' ) {
            for( s = 0; s < i; ++s ) {
                b[ s ] = a[ s ];
                out << b[ s ];
                cout << b[ s ];
            }
           
        }
        cout << endl;
        out << endl;
    }
   
    in.close();
    out.close();
    cin.get();
    return 0;
}
 
P-107403
« 1 »
  Strona 1 z 1