Neviem príjsť na fungovanie tohto jednoduchého programu – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Neviem príjsť na fungovanie tohto jednoduchého programu – C / C++ – Fórum – Programujte.comNeviem príjsť na fungovanie tohto jednoduchého programu – C / C++ – Fórum – Programujte.com

 

14. 1. 2017   #1
-
0
-

ako môžem v c urobiť aby mi vypísalo slovo začínajúce sa na písmeno ktoré zadám

napr. načítam si 4 slová do pola

ahoj

cau

cauko

vec

a ked napíšem že napr. c, tak program mi vypíše všetky slová začínajúce sa na písmeno c.

Ako sa to dá urobiť ??

Nahlásit jako SPAM
IP: 85.216.204.–
Anononym
~ Anonymní uživatel
3 příspěvky
15. 1. 2017   #2
-
0
-

#1 letsthrowq

Jednoduše, u každého slova srovnáš první písmeno s písmenem které jsi zadal a když se budou rovnat tak ti to slovo vypíše......

Nahlásit jako SPAM
IP: 77.48.243.–
letsthrowq
~ Anonymní uživatel
13 příspěvků
15. 1. 2017   #3
-
0
-

#2 Anononym
Na to som prišiel len ja neviem ako by mal vyzerať kod :D

Nahlásit jako SPAM
IP: 85.216.204.–
Anononym
~ Anonymní uživatel
3 příspěvky
15. 1. 2017   #4
-
0
-

#3 letsthrowq
 

Udělal jsem si chvilku a napsal takového strašáka, na kterém to snad jde vidět. (Já vím, je to hrůza, ale dělal jsem to na rychlo)

1.část: Vloží slova do stringu a učí znak dle kterého se bude třídit

2.část(Kdyby se upravila tato část tak by se ušetřilo dosti operací) : Rozdělí slova dle tečky,čárky,mezery a uloží je do vectoru delic.... ale dá se místo této části použít strtok

3.část: Napraví chyby způsobené 2.části a odstraní slova jenž nezačínají na dané písmeno.

4.část Vypíše slova. 

#include <iostream>
#include <string.h>
#include <vector>

using namespace std;

int main()
{
    vector<string> delic;
    string slova;
    char znak;
    delic.push_back("");

    cout << "Napis slova: ";
    getline(cin,slova);
    cout << "Pismeno podle ktereho vytridi slova: ";            // 1.cast
    cin >> znak;



    for(unsigned int i = 0;i < slova.length();++i)                               // 2.cast
    {
    if((slova[i]== ' ') || (slova[i]== '.') || (slova[i]== ',') && (delic[delic.size() - 1] != ""))
    {
        delic.push_back("");
    }
    else delic[delic.size()-1] += slova[i];
    }




    for(unsigned i = 0; i < delic.size();++i)                         // 3.cast
    {
        if((delic[i]== "")||(delic[i][0] != znak))
        {
            delic.erase(delic.begin() + i);
            i = i - 1;
        }
    }


    for(unsigned i = 0; i < delic.size();++i)                           // 4. cast
    {
        cout << delic[i] << endl;

    }

    return 0;
}
Nahlásit jako SPAM
IP: 77.48.243.–
letsthrowq
~ Anonymní uživatel
13 příspěvků
15. 1. 2017   #5
-
0
-

#4 Anononym
dík za radu

Nahlásit jako SPAM
IP: 85.216.204.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 61 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý