Potřebuji poradit s jazykem C

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

HanZulka
nováček
Příspěvky: 2
Registrován: listopad 17
Pohlaví: Muž

Potřebuji poradit s jazykem C

Příspěvekod HanZulka » 14 lis 2017 00:37

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)



Reklama
Zivan
Level 2.5
Level 2.5
Příspěvky: 392
Registrován: leden 10
Pohlaví: Nespecifikováno

Re: Potřebuji poradit s jazykem C

Příspěvekod Zivan » 14 lis 2017 08:41

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.

HanZulka
nováček
Příspěvky: 2
Registrován: listopad 17
Pohlaví: Muž

Re: Potřebuji poradit s jazykem C

Příspěvekod HanZulka » 14 lis 2017 11:07

Asi chápu co tím myslíš ... ale netušim jak to udělat :D

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];

Zivan
Level 2.5
Level 2.5
Příspěvky: 392
Registrován: leden 10
Pohlaví: Nespecifikováno

Re: Potřebuji poradit s jazykem C

Příspěvekod Zivan » 14 lis 2017 12:02

Dej sem cely kod, at je videt, kam jsi to dal. min/max=pole[0] plnis jen jednou?

Uživatelský avatar
faraon
Master Level 8
Master Level 8
Příspěvky: 6029
Registrován: prosinec 10
Pohlaví: Muž

Re: Potřebuji poradit s jazykem C

Příspěvekod faraon » 15 lis 2017 01:50

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];
Nejhroznější sen linuxáka: nabootuje počítač, a tam Windows.
Nejhroznější sen windowsáka: nabootuje počítač, a tam Linux.
Nejkrásnější sen linuxáka: nabootuje počítač, a tam Linux.
Nejkrásnější sen windowsáka: nabootuje počítač.


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Potřebuji poradit
    od Danderfluff » 31 led 2017 21:13 » v Taktování a další úpravy PC
    4
    411
    od Crelald
    03 úno 2017 10:05
  • Potřebuji poradit, prosím
    od NorinRed888 » 18 črc 2017 16:31 » v Rady s výběrem hardwaru a sestavením PC
    1
    197
    od Donald64
    18 črc 2017 21:20
  • Potřebuji poradit s hrou BF4
    od zd honza » 31 pro 2016 12:19 » v Hry
    0
    94
    od zd honza
    31 pro 2016 12:19
  • Potřebuji poradit s výběrem grafické karty.
    od Gordun » 09 bře 2017 17:04 » v Rady s výběrem hardwaru a sestavením PC
    1
    151
    od Adys301
    09 bře 2017 17:11
  • Potřebuji poradit jsem začátečník v programování.
    od ladda » 29 bře 2017 20:48 » v Vše ostatní (z oblasti IT)
    5
    401
    od X
    30 bře 2017 21:32

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: CommonCrawl [Bot] a 1 host