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

Wycinanie literek, zadanie ze spoja

Ostatnio zmodyfikowano 2018-01-04 10:23
Autor Wiadomość
Bercik97
Temat założony przez niniejszego użytkownika
Wycinanie literek, zadanie ze spoja
» 2018-01-03 21:04:22
Witam, oto link do zadania do spoja http://pl.spoj.com/problems/PROGC05/ Nie wiem dlaczego gdy ręcznie wpisuje input w moim programie to wychodzi wszystko git, ale gdy wrzucę na ideone to już output jest zły, jedynie pierwsza linia jest dobra. Pomoże ktoś? Oto kod:
C/C++
#include <stdio.h>
#define SIZE 100

int main()
{
    int i;
    char ch, wyraz[ SIZE ];
    while(( scanf( "%c", & ch ) ) != EOF )
    {
        scanf( "%s", wyraz );
        for( i = 0; i < strlen( wyraz ); i++ )
        {
            if( ch == wyraz[ i ] )
                 continue;
            else
                 putchar( wyraz[ i ] );
           
        }
        printf( "\n" );
        fflush( stdin );
    }
   
    return 0;
}
P-168384
nanoant20
» 2018-01-03 21:38:26
brakuje biblioteki
#include <string.h> //dla strlen
P-168387
Luq
» 2018-01-03 21:52:53
C/C++
fflush( stdin );
Nie jest to prawidłowy sposób czyszczenia strumienia wejściowego. Zamiast tego możesz użyć np. getchar.
P-168388
nanoant20
» 2018-01-03 21:54:36
P-168389
mateczek
» 2018-01-03 21:58:32
albo tak:
C/C++
#include <stdio.h>
#include "string.h"
#define SIZE 101

int main()
{
    int i;
    char ch, wyraz[ SIZE ];
    while(( scanf( "%c %s /n", & ch, wyraz ) ) != EOF )
    {
        int rozmiar = strlen( wyraz );
        for( i = 0; i < rozmiar; i++ )
        {
            if( ch == wyraz[ i ] )
                 continue;
            else
                 putchar( wyraz[ i ] );
           
        }
        printf( "\n" );
    }
   
    return 0;
}
albo pobieraj dane linijkami getline().

A może  c++??
C/C++
#include <iostream>
#include<string>
using namespace std;

string remove( const string & s, char charToRemove ) {
    string nowy;
    for( char litera: s ) {
        if( litera == charToRemove ) continue;
       
        nowy += litera;
    }
    return nowy;
}
int main() {
    char charToRemove;
    string s;
    while( cin >> charToRemove >> s ) {
        cout << remove( s, charToRemove ) << endl;
    }
}
P-168390
Bercik97
Temat założony przez niniejszego użytkownika
» 2018-01-03 22:28:39
Okej, problemem był właśnie ten fflush, zastąpiłem go getcharem i działa :) Wiem, niedługo się przerzucam na c++. Robię C bo na studiach mam i tylko dlatego :P Dzięki
Ps. jaką funkcja pobierać cały input od użytkownika, chodzi mi np o wszystkie spacje, znaki nowej linii itp, aż do EOF, żeby potem wyświetlić wszystko, bo nie wiem jak to zrobić.
P-168391
darko202
» 2018-01-04 10:23:12
przeczytaj info o wczytywaniu danych z pliku
np.
http://cpp0x.pl/kursy/Kurs-C++​/Poziom-4/348
P-168398
« 1 »
  Strona 1 z 1