Programovacie jazyky, rady, poradňa...
sun0oc
Zablokovaný
Príspevky: 14 Registrovaný: 14 jún 2009, 13:07
Príspevok
od používateľa sun0oc » 17 dec 2009, 17:46
zdravim, som uz zufaly. mam jednoduchu funkciu na overenie, ci vsetky znaky v stringu (pole charov) su cisla. overuje to jednoducho porovnavanim ascii tabulky v cykli. normalne v maine mi to funguje ale vo funkcii uz nie. viem ze sa to da robit cez pointre ale tie neovladam a iny sposob mi nejde. dakujem.
Kód: Vybrať všetko
int overenie_ciselneho_retazca(char znak) {
int i, dlzka_retazca;
int spravnost_znakov = -1;
dlzka_retazca = strlen(znak)-1;
for (i=0;i<=dlzka_retazca;i++) {
if (znak[i]>=48 && znak[i]<=57) {
spravnost_znakov++;
}
}
if (spravnost_znakov == dlzka_retazca) {
return 1;
} else {
return 0;
}
}
int main () {
char znak[50];
printf("zadaj znak: ");
scanf("%s",&znak);
if (overenie_ciselneho_retazca(znak)) {
printf("je znak");
} else {
printf("nie je znak");
}
sleep(60000);
return 0;
}
c-ice
Medium Star
Príspevky: 475 Registrovaný: 04 mar 2008, 15:18
Kontaktovať používateľa:
Príspevok
od používateľa c-ice » 17 dec 2009, 17:55
trocha mylné píšeš zadaj znak a očakávaš zadat retazec znakov
lebo do funkcie posielas jeden jediny znak pozri sa ako mas deklarovany vstupný parameter funkcie
na toto overenie existuju aj funkcie
sun0oc
Zablokovaný
Príspevky: 14 Registrovaný: 14 jún 2009, 13:07
Príspevok
od používateľa sun0oc » 17 dec 2009, 18:03
jasne, vsak stacilo dat char[50] ako vstup
sorry, programujem tu seminarku uz pat hodin a poriadne mi to nemysli. dakujem krasne
johny3212
Star
Príspevky: 532 Registrovaný: 17 feb 2008, 19:56
Bydlisko: Terchova
Kontaktovať používateľa:
Príspevok
od používateľa johny3212 » 17 dec 2009, 19:48
nie, stcilo tam dat ukazovatel :0
reDo
Star
Príspevky: 661 Registrovaný: 26 apr 2009, 18:36
Bydlisko: 00100100
Kontaktovať používateľa:
Príspevok
od používateľa reDo » 18 dec 2009, 19:10
ked uz je tu tema o c mam program ale nwm preco to nefunguje ma to byt quazy keygen ale neche mi to premennu x vypisovat ako znak ale nwm preco pls poradte, kontrolujem cisla preto aby som mal v kodoch iba od A-Z a 0-9
Kód: Vybrať všetko
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int main(void)
{
FILE *f;
int pocet=0;
int x;
srand((unsigned) time(NULL));
f=fopen("key.txt", "a");
fprintf(f, "KEY: ");
while(pocet!=20) {
x=rand() % 91;
if(x<=57&&x<=90&&x>=48&&65>=x)
{
printf("%c %c", x, a);
fprintf(f, "%c",x);
if(pocet%4==0&&pocet!=0)
fprintf(f," ");
if(pocet%4==0&&pocet!=0)
printf(" ");
pocet++;
}
else
continue;
}
fprintf(f, "\n");
fclose(f);
system("PAUSE");
return 0;
}
audiotrack
VIP
Príspevky: 25958 Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:
Príspevok
od používateľa audiotrack » 18 dec 2009, 19:20
skôr by som povedal že tam kompilátoru vadí to áčko:
BX
Addict
Príspevky: 4572 Registrovaný: 10 jan 2008, 15:30
Príspevok
od používateľa BX » 18 dec 2009, 19:28
X podla tejto podmienky moze byt mensie ako 57 a vacsie ako 48
audiotrack
VIP
Príspevky: 25958 Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:
Príspevok
od používateľa audiotrack » 18 dec 2009, 19:36
BX napísal:
X podla tejto podmienky moze byt mensie ako 57 a vacsie ako 48 :?:
takých čísel poznám až 9 :) z tej úúúúplne zlej podmienky si vypichol to ešte ako-tak dobré
//edit: mala by byť ((x<=57 && x>=48) || (x<=90 && x>=65))
reDo
Star
Príspevky: 661 Registrovaný: 26 apr 2009, 18:36
Bydlisko: 00100100
Kontaktovať používateľa:
Príspevok
od používateľa reDo » 18 dec 2009, 21:28
j dakujem prepacte za omyl to a som zmazal len ked som to tu chcel dat inak to nebola chyba
//autoeditácia príspevku ( 18 Dec 2009, 21:28 )
dobre takze je to upravene ale nwm preco mi to namiesto 5x4 znaky vypisuje 1x5 2x4 1x3 znaky pls co s tym?
audiotrack
VIP
Príspevky: 25958 Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:
Príspevok
od používateľa audiotrack » 18 dec 2009, 21:37
namiesto int pocet=0; daj int pocet=1;
reDo
Star
Príspevky: 661 Registrovaný: 26 apr 2009, 18:36
Bydlisko: 00100100
Kontaktovať používateľa:
Príspevok
od používateľa reDo » 18 dec 2009, 21:44
dakujem uz to ide ako som si predstavoval
fero_zezina
Amateur
Príspevky: 34 Registrovaný: 02 dec 2007, 10:03
Príspevok
od používateľa fero_zezina » 23 dec 2009, 0:49
... to mi pripomina... semestralku z algoritmizacie uloh... od nas zo skupiny, tipujem ze blbuvzdornu semestralku nemal takmer nikto...
ta pre buducnost , pouzit kniznicu ctype.h a funkciu isdigit(). ale aj takto je to dobre