Hirdetés
- GoodSpeed: Nem vénnek való vidék - Berettyóújfalu
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- gban: Ingyen kellene, de tegnapra
- Meggyi001: Több tucat Eiffel torony??? Igen, gyere, mutatom, hogy hol...
- Meggyi001: A kérdés...
- GoodSpeed: 3I/Atlas: Üstökös vagy idegen civilizáció űrhajója?
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Brogyi: CTEK akkumulátor töltő és másolatai
Új hozzászólás Aktív témák
-
chabeee
aktív tag
válasz
PetyaMIK
#2766
üzenetére
progalap házi HAHAHA

amúgy itt egy megoldás hozzá:
#include <stdio.h>
#include <string.h>
int main () {
char nev[30];
char tomb[100][30];
int i=0;
int counter=0;
int max=0;
int hossz;
int tomb2[100];
do{
printf("%d. name: ",i+1);
scanf("%s",nev);
if(nev[0] != '*') {
strcpy(tomb[i], nev);
printf("length: ");
scanf("%d", &hossz);
tomb2[i] = hossz;
}
i++;
counter++;
}while(nev[0] != '*' && i<100);
for(i=1; i<counter-1; i++){
if(tomb2[i]>tomb2[max]){
max=i;
}
}
printf("A leghosszabb kigyo %s, aki %d meteres. \n",tomb[max],tomb2[max]);
return 0;
} -
kingabo
őstag
válasz
PetyaMIK
#2762
üzenetére
Helló!
Jester01 észrevételein felül, while-ba kéne még egy feltétel, hogy ne kérhesd be a 101-edik értéket. Illetve kiíratásnál használhatod az index+1-et is, így nem lesz szükséged az Edik változóra.
Ja és egy kérés legközelebb a kód beillesztése után jelőld ki a kódot és nyomd meg alul a Programkód gombot, úgy nem fognak a tabulálások elveszni.

-
Jester01
veterán
válasz
PetyaMIK
#2762
üzenetére
A kigyok az kétdimenziós karakter tömb, vagy ha úgy tetszik egydimenziós string tömb. Ezért nem jó a kigyok[index] != '*', hiszen a bal oldal az char* a jobb oldal meg char. Egy lehetséges megoldás, ha a jobb oldalból is stringet csinálsz, és a megfelelő összehasonlítást alkalmazod: strcmp(kigyok[index], "*") != 0
MOD: Továbbá a ciklus vége előtt már növeled az index értékét, így a while feltétel már másik elemet vizsgál. Egyszerűbb lenne, ha a ciklusmagban lévő if feltétel break használatával kilépne a ciklusból, ami amúgy végtelen lenne.
MOD #2: ja és ha csak a leghosszabb kígyót kell kiíratni, akkor teljesen fölösleges mindet eltárolni egy tömbben.
Ú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!
- Eladó EVGA 700 W1
- i7 10700/ RTX2080Ti/ 32GB DDR4 alapú konfig/ garancia/ ingyen foxpost
- Újszerű Ps5 Kontrollerrek Garanciával
- Acer Nitro 16 - 16" WQXGA 165Hz - Ryzen 7 8845HS - 16GB - 1TB - Win11 - RTX 4070 - Garancia
- Samsung Galaxy S23 8/256GB, Megkímélt, Kártyafüggetlen, Töltővel, 1 Év Garanciával!
- Eladó Samsung Galaxy S22 8/128GB / 12 hó jótállás
- Mio Star 8750B Automata kávégép 6 hónap Garancia Beszámítás Házhozszállítás
- Gamer PC-Számítógép! Csere-Beszámítás! I5 12400F / RTX 3070 8GB / 32GB DDR4 / 1TB SSD
- Új és újszerű 15-16 Gamer, irodai, üzleti, készülékek nagyon kedvező alkalmi áron Garanciával!
- GYÖNYÖRŰ iPhone 14 Pro 128GB Space Black-1 ÉV GARANCIA - Kártyafüggetlen, MS3781, 100% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest




