Diskuze: Načtení textu
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Text má byť načítaný z klávesnice alebo zo súboru?
Ak je to z klávesnice, tak nejak takto:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
char text[1000000];
scanf(" %999999[^\n]", text);
// vypis dlzky retazca
// za pouzitia kniznice string.h
printf("%d\n", strlen(text));
// bez pouzitia string.h
int i = 0;
while(text[i] != 0)
i++;
printf("%d\n", i);
return 0;
}
ALE, **ľubovolne dlhý text je **veľmi nepresná hodnota, alebo ak je to myslené doslova, pocet znakov v texte je predsa len obmädzený.
Moc se omlouvám, text má být načten ze souboru.
#include <cstdlib>
#include <fstream>
#include <iostream>
using namespace std;
int i=0,b,pismena[256];
char znak,pok;
int main (){
string slovo ;
ifstream in ;
in . open ( "vstup.txt" );
if ( in . is_open ()) {
while ( in . get ( znak )){
slovo[i]=znak;
i=i+1;}
in . close ();
}
for (int a=0;a<i;a++)
{ b=slovo[a] ;
pismena[b]=pismena[b]+1 ;
}
for (int a=0;a<256;a++)
{ if(pismena[a]>0){
pok=a;
cout<<pismena[a]<<" "<<pok<<endl;
}
}
Mám to takhle, bohužel při více znacích mi to přestane pracovat,
nevíte co stím?:D
.
Zobrazeno 6 zpráv z 6.