zdravím,
mám malinkatý problém s určením MIN a MAX hodnoty polí. Resp. netuším jak na to.
Mám tento Kód: "předem se omlouvám všem co tomu rozumí"
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main(void)
{
char klavesa;
int n,i;
int hm;
int suda, licha, nuly;
while (klavesa!='k')
{
suda=0;
licha=0; //vynulovano//
nuly=0;
printf("Zadejte pocet cisel, ktere chcete generovat: ");
scanf("%d", &n);
int pole[n];
printf("Zadejte horni mez: ");
scanf("%d", &hm);
srand(time(NULL)); //zajisti generovani jinych cisel pri znovuspusteni programu//
printf("Hodnota konstanty RAND_MAX je: %d", RAND_MAX);
for(i=0; i<n; i++)
{
/* pole[i]=rand(); */ //cisla do RAND_MAX //
/* pole[i]=rand()%hm; */ //cisla od 0 do hm - 1//
pole[i]=rand()%(hm+1); //cisla od 0 do hm//
/* pole[i]=-rand()%(hm+1);*/ // cisla od - hm do 0//
if(pole[i]==0)
nuly++;
else if(pole[i]%2==0)
suda++;
else
licha++;
}
printf("\n\nPole obsahuje tato cisla: ");
for(i=0; i<n; i++)
printf("%d, ", pole[i]);
printf("\n\nPocet sudych cisel: %d", suda);
printf("\nPocet lichych cisel: %d", licha);
printf("\nPocet nul cisel: %d", nuly);
printf("\n\nProgram ukoncite stiskem klavesy k\n");
klavesa=getch();
printf("nebyla stisknuta klavesa k\n\n");
}
}
Potřeboval bych poradit s tím aby to ukazovalo minimální a maximální hodnotu pole.
1. bych ho deklaroval (int max,min;)
2. vynuloval (max=0; min=0;)
3. tento krok netuším
4. vypsal do textu (printf("max cislo je: %d", max)
Potřebuji poradit s jazykem C
Re: Potřebuji poradit s jazykem C
ad2) Co se stane, kdyz nastavis min = 0 a v poli budes mit hodnoty 1 az 20? Min zustane 0 a to asi nechces :) Dej tam prvni hodnotu z pole a pak v cyhlu projdi postupne vsechny hodnoty a kdyz narazis na mensi cislo nez min, tak min prepis a pokud narazis na cislo vetsi nez max, tak ho opet hodnotu max prepis. Na konci cyklu mas maximalni i minimalni hodnotu.
HP Elitebook 845 G8 (Ryzen 5650U, 32GB RAM, WD SN570 1TB, 14" fullHD IPS) + HP USB-C G5 Essential + 29" LG 29UM65 + 22" Eizo S2202W
Re: Potřebuji poradit s jazykem C
Asi chápu co tím myslíš ... ale netušim jak to udělat
Dodatečně přidáno po 19 minutách 8 vteřinách:
když to napíšu takhle tak mi to vyhazuje kraviny ...
max=pole[0];
min=pole[0];
if(max<pole[i])
max=pole[i];
else if(min>pole[i])
min=pole[i];
Dodatečně přidáno po 19 minutách 8 vteřinách:
když to napíšu takhle tak mi to vyhazuje kraviny ...
max=pole[0];
min=pole[0];
if(max<pole[i])
max=pole[i];
else if(min>pole[i])
min=pole[i];
Re: Potřebuji poradit s jazykem C
Dej sem cely kod, at je videt, kam jsi to dal. min/max=pole[0] plnis jen jednou?
HP Elitebook 845 G8 (Ryzen 5650U, 32GB RAM, WD SN570 1TB, 14" fullHD IPS) + HP USB-C G5 Essential + 29" LG 29UM65 + 22" Eizo S2202W
Re: Potřebuji poradit s jazykem C
HanZulka píše:max=pole[0];
min=pole[0];
if(max<pole[i])
max=pole[i];
else if(min>pole[i])
min=pole[i];
Provádíš ten if v cyklu?
Kód: Vybrat vše
max=min=pole[0];
for (i=1; i<n; ++i)
if (max<pole[i]) max=pole[i];
else if (min>pole[i]) min=pole[i];
"Král Lávra má dlouhé oslí uši, král je ušatec!
(pravil K. H. Borovský o cenzuře internetu)
(pravil K. H. Borovský o cenzuře internetu)
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
-
Potřebuji poradit s výběrem notebooku Lenovo
od PetrPav » 31 kvě 2023 17:41 » v Rady s výběrem hw a sestavením PC - 4
- 769
-
od mmmartin
Zobrazit poslední příspěvek
31 kvě 2023 23:39
-
-
-
Potřebuji poradit se zvukem HDMI z PC do AV receiveru
od jkmaxfli » 20 led 2024 20:27 » v Rady s výběrem hw a sestavením PC - 18
- 1609
-
od jkmaxfli
Zobrazit poslední příspěvek
24 led 2024 14:55
-
-
-
Potřebuji sestavit na czc herní pc do 25.000,-
od DannyXXGr » 17 bře 2024 17:10 » v Rady s výběrem hw a sestavením PC - 4
- 429
-
od meda2016
Zobrazit poslední příspěvek
18 bře 2024 08:07
-
-
-
Problémy s novým PC zakoupeným přes Alza - potřebuji radu Příloha(y)
od Rhadley » 09 bře 2024 19:15 » v Windows 11, 10, 8... - 9
- 804
-
od BL!zZard
Zobrazit poslední příspěvek
10 bře 2024 18:56
-
Zpět na “Programování a tvorba webu”
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti