Új hozzászólás Aktív témák
-
kingabo
őstag
válasz
Pcmagicnet #2355 üzenetére
A az 'i2' és a 'k2' azok milyen betűk?
Ehelyett :printf("(%1.1f%s) \n", (a / k), "%" ); ez is írható: printf("(%1.1f\%) \n", (a / k));. Ha egy string-ben egy foglalt operátort akarsz használni, mint itt pl a %-ot, vagy idézőjelet("), akkor szimplán írj elé egy \ jelet.Ha a \ jel kellene az így néz ki: \\Pont ugyanígy a printf("%s","*"); helyett printf("\*");
Illetve ha csak 1 karaktert íratsz ki akkor szebb a %s helyett a %c.
Ha akarsz a progidon rengeteget rövidíteni: ascii.Kicsit bővebben, a ciklusban a c1 a bekért betű ascii kódját fogja tárolni (vagyis ha nem %c-vel íratod ki, hanem %d-vel akkor a betű helyett az ascii kódja kerül a képernyőre). Az ascii kódot pedig szépen fel tudod használni egy tömb indexelésére. Pl a szám tömb indexeléséhez:
if (c1>='0' && c1 <='9')
{
++szam[c1-48]; //a 0 ascci kodja 48, vagyis ezt le kell vonni
}
Hasonlóan rövid lesz a betűk esetén is az 'A' esetén 65-t kell levonni, a 'a' esetén 97-et. Persze a megfelelő méretű tömböket elötte le kell foglalni.(#2356) Pcmagicnet: ránézésre jó, kipróbálod és kiderül.
-
Pcmagicnet
csendes tag
válasz
Pcmagicnet #2355 üzenetére
Itt a megoldás.( Ha jól gondolom )
/* százalék számítás */
k = (nc/100.0) ;
printf("\na:");
a2 = (nc/70.0); /* max 70 karaktert ír ki ha 100%. Ha pl: nc=100 ez osztva 70.0 -el
= 1.4. Ez a 70 karakternek az 1% -a! De ha az öszes karakter (nc)=1 akkor (nc/70.0)
= 0.01. Ekkor ez a 70 karakter 1% -a.*/
for(i=0; i<=(a/a2); ++i){ /* Az (a/a2) -vel megnézem hogy a 70 -nek az 1% -a hányszor
van meg az 'a' változóba. Ha pl: a=10 és az összes karakter is 10 amiből adódóan
az a2 értéke 0.1 akkor (a/a2) azaz 10 / 0.1 = 100. Így a kapott eredmény
100% és 70db * karaktert ír ki. Másik példával: ha öszzes karakter (nc)=100
ez osztva 70.0 -el = 1.4. Ez a 70 karakternek az 1% -a! Ebből 20db az 'a' betű, a többi más
akkor (a/a2) azaz 20 / 1.4 = 14. Tehát 14db karakter a 70 karakter 20%-a. */
printf("%s","*");
}
printf("(%1.1f%s) \n", (a / k) , "%" );
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- droidic: YouTube videók és playlistek letöltése GUI-alkalmazással
- Xiaomi Mi 11 Lite - 4G-vel vagy 5G-vel kéred?
- Debrecen és környéke adok-veszek-beszélgetek
- PlayStation 5
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Filmvilág
- Lakáshitel, lakásvásárlás
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Gumi és felni topik
- Konzolokról KULTURÁLT módon
- További aktív témák...
- Intel Laminar RM1 PWM Intel CPU Hűtő (Socket 1700) - Új, bontatlan - Eladó!
- Beszámítás! Apple Mac Mini 2024 M4 16GB 256GB SSD számítógép garanciával, hibátlan működéssel
- BESZÁMÍTÁS! LG UltraGear 27GL850-B 144Hz QHD 1ms monitor garanciával hibátlan működéssel
- Csere-Beszámítás! Playstation 5 Slim Digital edition! OLVASS!
- BESZÁMÍTÁS! Samsung Odyssey G9 OLED 240Hz Dual QHD 0,03ms monitor garanciával hibátlan működéssel
- LG UltraGear Gaming Monitorok: FRISS SZÁLLÍTMÁNY -30%
- Eredeti Lenovo 230W töltők - 4X20Z83995
- Dell USB-C, Thunderbolt 3, TB3, TB4 dokkolók (K20A) WD19TB/ WD19TBS/ WD22TB4, (K16A) TB16/ TB18DC
- Bomba ár! HP Elitebook 8570W - i7-QM I 16GB I 750GB I 15,6" HD+/FHD I Nvidia I W10 I Garancia
- Dymo LabelWriter 400 - Hőpapíros címkenyomtató
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest