[ Príspevkov: 12 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.11.14
Prihlásený: 13.11.14
Príspevky: 6
Témy: 1 | 1

Dobrý deň potreboval by som pomôcť s jednou problematikou
chcel by som vedieť ako by sa v c++ po zadaní textu vyhľadalo určité písmeno, ktoré by sa nahradilo viacerými znakmi
lebo v texte zmeniť jedno písmeno za iný znak nie je problém ale za viac znakov je problém. Stačila by mi nejaká najjednoduchšia verzia
používam momentálne premenné typu string v programe.

Za pomoc vopred ďakujem


Offline

Užívateľ
Užívateľ
c++ nahradenie znaku viacerými znakmi

Registrovaný: 08.03.09
Prihlásený: 06.10.20
Príspevky: 1116
Témy: 88 | 88
Bydlisko: 00100100
NapísalOffline : 08.11.2014 16:31 | c++ nahradenie znaku viacerými znakmi

Viem, ze by sa to nemalo, ale dam aj kod. Staci ist postupne a pouzit este jeden string ako to mam ja alebo cez delete a insert.
Kód:
#include <bits/stdc++.h>

using namespace std;

string f(string a, char b, string c)
{
    string r;
    for(int i = 0; i < a.size(); i++)
        if(a[i] == b)
            r += c;
        else
            r += a[i];
    return r;
}

int main()
{
    string a = "toto je retazec ooo";
    char b = 'o';
    string c = "_ha_";
    cout << f(a, b, c) << endl;
    return 0;
}


_________________
Programming is The Best
Hackers Are Not Crackers!!! Hackers build things, crackers break them!
;-)
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.11.14
Prihlásený: 13.11.14
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 08.11.2014 18:39 | c++ nahradenie znaku viacerými znakmi

Ďakujem funguje to ako potrebujem
len problém je keď zadám text s medzerami premení to len po prvý nájdený znak
pri zadaní textu bez medzier to funguje dobre


Offline

Užívateľ
Užívateľ
c++ nahradenie znaku viacerými znakmi

Registrovaný: 08.03.09
Prihlásený: 06.10.20
Príspevky: 1116
Témy: 88 | 88
Bydlisko: 00100100
NapísalOffline : 09.11.2014 8:39 | c++ nahradenie znaku viacerými znakmi

Nechapem co myslis, ved hento ti zmeni vsetky o na _ha_ aj tie na konci. Daj priklad kde ti to nejde.


_________________
Programming is The Best
Hackers Are Not Crackers!!! Hackers build things, crackers break them!
;-)
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.11.14
Prihlásený: 13.11.14
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 11.11.2014 0:24 | c++ nahradenie znaku viacerými znakmi

to uz mam vyriesene obycajne cin na nacitanie textu nestaci to zobere prve slovo po medzeru cez getline to ide aj s medzerami

teraz riesim problem ze chcel by som spravit menu ze napriklad 1 : kodovanie 2 : kodovanie ale cez obycajnu podmienku to nejde lebo si pamata enter
tak zbehne podmienka bez zadani textu a ukonci sa a skusal som cin get ale ten reaguje pri stlaceni enter a kamarad mi poradil key catch ale to neviem
ani ako vyzera taky sposob :D


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.12.20
Príspevky: 1516
Témy: 3 | 3
NapísalOffline : 11.11.2014 7:40 | c++ nahradenie znaku viacerými znakmi

Pri stlačení enteru sa ti do vstupu uloží aj ten enter. Vždy. Takže to môžeš kľudne urobiť cez obyčajnú podmienku, len vždy po načítaní možnosti musíš ešte "odstrániť" zo vstupu ten jeden znak '\n' (a to napríklad funkciou getchar, alebo scanf("%d\n",&moznost) )


_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.11.14
Prihlásený: 13.11.14
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 11.11.2014 18:36 | c++ nahradenie znaku viacerými znakmi

ďakujem pomohlo mi to ten enter som vymazal cez cin.get(); a uz to funguje ako ma ako chcem zatial

// Spojený príspevok Uto 11.11.14 21:51

a posledna cast mojho programu je desifrovanie akym sposobom by som spravil ze nacita si akzdych 5 znakov a tie bude porovnavat potom a
desifruje to potom na znak mozes aj priklad daky uviest

napriklad 0000100011 by po 5 znakov rozdelil a 00001 by bolo napriklad "a" 00011 znak "b"


Offline

Užívateľ
Užívateľ
c++ nahradenie znaku viacerými znakmi

Registrovaný: 08.03.09
Prihlásený: 06.10.20
Príspevky: 1116
Témy: 88 | 88
Bydlisko: 00100100
NapísalOffline : 13.11.2014 17:29 | c++ nahradenie znaku viacerými znakmi

Prepac, ale co z toho ty vobec vies?! Funkciu decode si urob ako potrebujes ty, lebo to co som dal je cez ASCII tabulku
Kód:
#include <bits/stdc++.h>

using namespace std;

char decode(string s)
{
    reverse(s.begin(), s.end());
    int sum = 0;
    for(int i = 0; i < s.size(); i++)
        sum += (s[i] - '0') * (int)pow(2, i);
    return char(sum);
}

int main()
{
    string s = "0000100011";
    for(int i = 0; i < s.size(); i += 5)
        cout << decode(s.substr(i, 5));
    return 0;
}


_________________
Programming is The Best
Hackers Are Not Crackers!!! Hackers build things, crackers break them!
;-)
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.11.14
Prihlásený: 13.11.14
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 13.11.2014 18:55 | c++ nahradenie znaku viacerými znakmi

no s retazcami moc neviem :D len tento program som chcel kedysi robit :D:D:D a mam cas na to teraz :D:D tak si plnim sen :D


Offline

Skúsený užívateľ
Skúsený užívateľ
c++ nahradenie znaku viacerými znakmi

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66 | 66
Bydlisko: Žilina
NapísalOffline : 13.11.2014 19:24 | c++ nahradenie znaku viacerými znakmi

Plníš si sen tým, že ti reDo dáva komplet kód?


_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.11.14
Prihlásený: 13.11.14
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 13.11.2014 21:08 | c++ nahradenie znaku viacerými znakmi

jo moderná doba :D:D:D:D:D


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.12.20
Príspevky: 1516
Témy: 3 | 3
NapísalOffline : 14.11.2014 8:34 | c++ nahradenie znaku viacerými znakmi

Ty nemáš čas ale my ho máme hej? Tak pevne dúfam, že od teraz už ti nikto neporadí.


_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
 [ Príspevkov: 12 ] 


c++ nahradenie znaku viacerými znakmi



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Premenovanie suborov - nahradenie znaku za iny

v Ostatné programy

1

1168

08.02.2006 10:10

gogolak

V tomto fóre nie sú ďalšie neprečítané témy.

zobrazovanie znaku v retazci, jazyk C

v Assembler, C, C++, Pascal, Java

2

414

04.01.2012 20:49

svejk

V tomto fóre nie sú ďalšie neprečítané témy.

C problem s priradenim viac ako jedneho znaku

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Assembler, C, C++, Pascal, Java

30

1956

30.03.2009 22:01

paszty

V tomto fóre nie sú ďalšie neprečítané témy.

vytah z databazi aj zo znakmi

v PHP, ASP

1

507

31.03.2007 15:49

suchy

V tomto fóre nie sú ďalšie neprečítané témy.

Praca s viacerymi zalozkami

v Sieťové a internetové programy

2

369

28.12.2016 13:16

maRT

V tomto fóre nie sú ďalšie neprečítané témy.

call_user_func() s viacerymi parametrami funkcie

v PHP, ASP

14

661

10.06.2008 12:38

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

Ako prepojiť databázu s viacerými zdrojmi?

v Databázy

17

1048

14.01.2010 12:27

Googler1

V tomto fóre nie sú ďalšie neprečítané témy.

Wifi Problem s viacerymi pripojenymi zariadeniami

v Siete

1

249

21.11.2014 7:31

Mego

V tomto fóre nie sú ďalšie neprečítané témy.

Nový čip pre systémy s viacerými GPU

v Novinky

4

1217

23.12.2008 0:56

Triminka

V tomto fóre nie sú ďalšie neprečítané témy.

DLNA a video s viacerymi audio stopami

v Siete

0

617

21.11.2011 18:49

Daevid

V tomto fóre nie sú ďalšie neprečítané témy.

Validnosť znaku |

v Ostatné

2

614

11.10.2009 13:11

jefitto

V tomto fóre nie sú ďalšie neprečítané témy.

sirka znaku

v HTML, XHTML, XML, CSS

9

905

14.10.2007 11:51

Bananslovak

V tomto fóre nie sú ďalšie neprečítané témy.

RAID 1 na 1particii disku s viacerymi particiami

v Pevné disky a radiče

11

360

30.01.2014 1:47

harm22

V tomto fóre nie sú ďalšie neprečítané témy.

K dispozícii beta Chrome 13 s viacerými novinkami

v Novinky

13

634

21.06.2011 16:54

mirom

V tomto fóre nie sú ďalšie neprečítané témy.

Linux 2.6.23 s viacerými veľkými zmenami

v Novinky

1

389

12.10.2007 8:47

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

nahradenie textu

v Assembler, C, C++, Pascal, Java

2

300

16.06.2015 2:27

p4tooo



© 2005 - 2024 PCforum, edited by JanoF