Black Friday Black Friday
Black Friday výprodej! Až 80 % extra bodů zdarma! Více informací zde
Avatar
Martin
Člen
Avatar
Martin:25. dubna 17:16

Ahojte, dostal som zadanie na vypracovanie programu v C. Problem je ze tomu vobec nerozumiem, dokonca nechápem ani to zadanie:
Vytvorte program, ktorý od užívateľa načíta N - počet osôb v triede (N<=30). Naprogramujte funkcie:

  1. a) na načítanie úspor jednotlivých osôb do poľa a na výpis zaznamenaných úspor v poli, b) na výpočet celkových úspor
  2. na vypísanie poradových čísel osôb s maximálnymi úsporami
  3. na výpis poradových čísel všetkých osôb s podpriemernými úsporami

Môžete sa niekto na to pozrieť a vysvetliť mi ako postupovať lebo som úplne bezradný. Máme to mať v programe CodeBlocks. Ďakujem za všetky tipy a rady.

Editováno 25. dubna 17:17
 
Odpovědět 25. dubna 17:16
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Martin
DarkCoder:25. dubna 18:01

Zadání je srozumitelné. Postup je zhruba následující:

Vytvoříš uživatelské Menu a dotážeš se uživatele na zadání hodnoty N (počtu žáků).
Vytvoříš dynamicky alokované pole struktur o velikosti N, kde prvky struktury budou ID žáka a uspora.
Pomocí for cyklu naplníš data struktury požadovanými hodnotami a vypíšeš je na obrazovku. (1a)
Pomocí for cyklu projdeš celé pole a jak jej budeš procházet, budeš aktualizovat stav celkové uspory. (1b)
Seřadíš data v poli od nejvyšší uspory k nejnižší
Stanovíš hodnotu mezi maximální a dostatečnou usporou.
Provedeš sekvenčně výpis ID prvku struktury pro všechny osoby s usporou větší nebo rovno ze stanovené meze na obrazovku (2).
Stanovíš hodnotu pro mez mezi podprůměrnou a dostatečnou usporou.
Binárním půlením najdeš mez mezi podprůměrnou a dostatečnou usporou.
Provedeš sekvenčně výpis ID prvku struktury pro všechny osoby s usporou rovno nebo nižší ze stanovené meze na obrazovku (3).

Pokud něco není jasné, ptej se učitele. Od toho tam je aby podal a vysvětlil co od Vás chce.
Zda to má být tvořeno v CodeBlocks je naprosto nepodstatná informace. Jediné, co by mělo být po Vás požadováno je to, aby to bylo napsáno dle ANSI C.

Nahoru Odpovědět 25. dubna 18:01
"„Učíš-li se proto, aby sis zapamatoval, zapomeneš. Učíš-li se proto, abys porozuměl, zapamatuješ si."
Avatar
Martin
Člen
Avatar
Odpovídá na DarkCoder
Martin:25. dubna 18:12

Programovanie nie je môj odbor, ja som sieťar, toto máme len ako doplnkový predmet. Učiteľka nám len premietne program na stene a my si ho len prepíšeme, vysvetlíme čo robí. Jediné čo ako tak spravím, sú základné funkcie. S poliami a cyklami neviem pracovať, no uvidím niečo snáď výmyslim. Ďakujem za návod.

 
Nahoru Odpovědět 25. dubna 18:12
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Martin
David Čápka:25. dubna 18:41

To ti někdo řekl, že síťař nepotřebuje umět ani základy programování nebo jsi na to přišel sám? Jako síťař si budeš čas od času potřebovat napsat nějaký bash skript. Navíc tohle se dá naučit za pár hodin, máme tu na to kurzy zdarma, spíše to zatím vypadá, že se ti moc nechce.

Nahoru Odpovědět 25. dubna 18:41
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Martin
Člen
Avatar
Odpovídá na David Čápka
Martin:25. dubna 18:47

Absolútne ma programovanie nezaujíma ani nebaví. Oblasť v ktorej chcem pracovať nemá s programovaním nič spoločné. Ale o to tu nejde, jediné čo potrebujem je napísať ten program a nie sa tu hádať ;)

 
Nahoru Odpovědět  -3 25. dubna 18:47
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Martin
DarkCoder:25. dubna 19:18

„I skladník ve šroubárně si může přečísti Vergilia v originále.“

Pokud bych měl upravil následující hlášku pro naše srovnání, bylo by to následovně.

„I síťař by měl být schopen umět programovat.“

A to bez nadsázky. Je třeba vidět rozdíl "si může" a "by měl". Bezpečnost internetu, firemní či domácí sítě je něco, co si vyžaduje v dnešní době obrovskou pozornost a na co by měl být brán důraz. Síťař by měl mít nejvíce informací a dovedností o tom jak to vše funguje. Měl by být schopen zamezit případné hrozbě a reagovat na změny a způsoby potenciálních útoků. Shrnuto: Síťař se bez znalosti programování rozhodně neobejde.

Takovýto předmět by měl být předmětem povinným nikoli doplňkovým.

Chceš říci, že výuka probíhá tak, že Vám učitelka pustí nějaký slide, který si pouze přepíšete a vysvětlíte si na něm co a jak? Co je to za školu, předmět a kolik měsíců máš už z předmětu absolvováno?

Nahoru Odpovědět  +1 25. dubna 19:18
"„Učíš-li se proto, aby sis zapamatoval, zapomeneš. Učíš-li se proto, abys porozuměl, zapamatuješ si."
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Martin
David Čápka:25. dubna 19:27

Absolútne ma programovanie nezaujíma ani nebaví.

Pak tu nemáš co dělat.

Nahoru Odpovědět 25. dubna 19:27
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Martin
Člen
Avatar
Odpovídá na DarkCoder
Martin:25. dubna 19:48

SPŠ dopravná, odbor mám IT technológie, 3. ročník. Predmet sa volá Základy programovania. Neviem koľko mesiacov, máme dvojhodinovku každý druhý týždeň, hodina vyzerá ako v cirkuse. To ani nie je programovanie, väčšinou tam hráme online hry, a programy fakt len opisujeme. Ten predmet tam ani nemusí byť z môjho pohľadu.

 
Nahoru Odpovědět 25. dubna 19:48
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:26. dubna 8:36

Vytvorte program, ktorý od užívateľa načíta N - počet osôb v triede (N<=30). Naprogramujte funkcie:
1a - na načítanie úspor jednotlivých osôb do poľa a na výpis zaznamenaných úspor v poli,
1b - na výpočet celkových úspor
2 - na vypísanie poradových čísel osôb s maximálnymi úsporami
3 - na výpis poradových čísel všetkých osôb s podpriemernými úsporami


0)
- vypis_na_obra­zovku('Zadej pocet osob :')
- N = precti_data_od_u­zivatele()
- vyhodnot, zda je to cislo a uloz
1a)
- totez jako 0), v cyklu 1 az N, ukladas data do pole_data jmeno, cislo
- cyklus pro vypis toho pole
1b) - cyklus, kopie pole_data do prazdneho pole_suma tak, ze kdyz v tom pole_suma jmeno existuje a je stejne, uspory mu prictes. Kdyz neexistuje, pridas osobu a jeji uspory.
2) - seradis pole pole_suma podle castky, nejvetsi nahoru
3) - vypises ze serazeneho pole ty, kde je castka<x

'poradových čísel' - takze budes mit v te tabulce/poli_suma 3 sloupce - poradi, jmeno, penize
Ikdyz, neni mi uplne jasne, proc vypisovat poradi, kdyz mas jmeno osoby.
Na kazdy ten vypis nebo nacitani dat bych si udelal funkci. Pak by slo udelat menu, kde by sis vybral, co chces zobrazit. Pripadne prepinat funkce. Jakoze bys mel nekonecny cyklus, ktery cte od uzivatele text, dokud neda enter. A kdyz ten text bude treba =='k', tak program ukoncis. Kdyz 1, tak ho prepnes na pridej dalsiho uzivatele... Jakoze by se to nemuselo omezovat na zadane N, pocet zadanych castek.

Prijde mi to jako takova obycejna zaverecna prace na konci pulroku.
Muzete pozadat ucitelku o jiny pristup. At vam da zadani nejakych navic uloh a vy ji je budete vypracovavat. Nemusi vsichni vsechno mit, ale aby jste se nenudili.
Programovani je zaklad. Bez toho se dnes uz neobejdes. Bude se zavadet na zakladni skolu. Neumis programovat, jako bys nemel ukoncene zakladni vzdelani :)

Editováno 26. dubna 8:39
 
Nahoru Odpovědět 26. dubna 8:36
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 9 zpráv z 9.