Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Ondrej Zadrapa:19.4.2020 10:55

Caute, mam tady pomerne "neresitelny" problem. Zhruba druhy tyden se snazim ucit zaklady c# a zasekl jsem se na ukolu z knihy, jehoz zadani zni, ze mam napsat program, ktery me vyzve k zadani poctu zamestnancu, pote me vyzve k zadani jejich mezd a pote v konzoli vypise ty mzdy, ktere jsou vetsi nez prumer. Mam silny pocit, ze to, co zde prikladam, je cele spatne, ale taky mam pocit, ze mi chybi jenom nejaka drobnost, jsem uplny zacatecnik a docela jsem se zasekl a je celkem kontraproduktivni pokracovat dale v knize bez pochopeni tohoto cyklu. Muzete mi prosim nejak polopaticky poradit? Dekuji, Ondrej

Zkusil jsem: int[] zamestnanec = new int[5];
int prumMzda = 25000;
Console.Write("Za­dejte pocet zamestnancu: ");
int pocetZam = Int32.Parse(Con­sole.ReadLine());
for (int i = 1; i > prumMzda; i++)
{
Console.Write("Za­dejte {0}. zamestnance: ", i);
if (prumMzda >= i) ;

}

Chci docílit: Jde mi o to, abych se naucil konstruovat programy, ktere pri spusteni budou pozadovat pocet zadanych promennych, jejich hodnotu a aby mi to nakonec vyplivlo mistou souctu cisla vetsi/mensi nez konstanta.

 
Odpovědět
19.4.2020 10:55
Avatar
Tadeáš Burda
Brigádník
Avatar
Odpovídá na Ondrej Zadrapa
Tadeáš Burda :19.4.2020 11:06

Asi by bylo protebia najlespi keby zjedes tutorialy tady na stranke. Je to tu fakt dobre napisane a ak dokoncis tady zaklady ten program dokazes napisat sam. Napr. uz len to zadani poctu zamnestnancu mas zle, lebo ak tam das string tak to padne a pod. Zjed si tady aspon zaklady C#, takto je to naprd lebo nikdo nevi co uz vlastne ovladas a tak...

 
Nahoru Odpovědět
19.4.2020 11:06
Avatar
Ondrej Zadrapa:19.4.2020 11:08

Dobra, diky, zkusim to.

 
Nahoru Odpovědět
19.4.2020 11:08
Avatar
zelvicek
Člen
Avatar
Odpovídá na Ondrej Zadrapa
zelvicek:19.4.2020 11:20

Kniha, která neobsahuje řešení? Opravdu?

Ale mějme trpělivost. Tvůj pokus není úplně špatný, ale ani správný.

  1. Počet zaměstnanců jsi dokázal zjistit.
  2. Vytvoř úložiště pro platy zaměstatnců. Jeho velikost by měla reflektovat jejich počet. V tvém pokusu to nemáš správně.
  3. Postupně požádej uživatele o zadání platů všech zaměstnanců a ulož je do úložiště platů (viz krok 2).
  4. Spočti průměr platů.
  5. Postupně vypiš platy větší než spočtený průměr.

S těmito kroky bys neměl mít vetší problémy. Tvůj pokus ukazuje, že znalosti potřebných dílčích konstrukcí máš, celek ti ale utekl.

Pokud ti jde o to, aby ses naucil konstruovat programy, měl by sis přečíst zadání pořádně a zamyslet se nad ním. Tvůj pokus mi moc neukazuje na to, že jsi tak učinil.

 
Nahoru Odpovědět
19.4.2020 11:20
Avatar
Odpovídá na zelvicek
Ondrej Zadrapa:19.4.2020 12:16

Opravdu, jinak bych se neptal, kniha se jmenuje C# bez předchozích znalosti, autor Pavel Bory a jedu podle ni. A uz vcera jsem se kousnul snad na 5 hodin u prikladu, ktery kombinoval "else if else if, swich, case", ktery jsem nakonec vyresil hodne svebytne, ucel to splnilo, sice ne uplne podle mych predstav, ale splnilo, ale v Te knize jsou Resene priklady vcetne postupu, ktery je mi v tuhle chvili uplne k nicemu, v minule kapitole, kdyz jsem se zpetne vratil, tak jsem to podle postupu cele kapitoly nejak sestrojil, nebo to spis jako samouk nejsem zatím schopen pochopit a pak jsou tu slovni ulohy bez reseni, coz je tahle, na kterou se ptam, popravde jsem dost v koncích, zkousel bych i tutorial tady, jenze u prikladu umocnovani nevim, jak se v c# dela umocneni, protože kdyz dam promennou na druhou, například a2, tak mi to vyplivne číslo o 2 mensi, cili c# ma nejaky jiny znak pro umocneni a ja to za Boha nejsem schopen nikde najit.

 
Nahoru Odpovědět
19.4.2020 12:16
Avatar
Tadeáš Burda
Brigádník
Avatar
Odpovídá na Ondrej Zadrapa
Tadeáš Burda :19.4.2020 13:42

Math.Pow(n, 2)

Editováno 19.4.2020 13:42
 
Nahoru Odpovědět
19.4.2020 13:42
Avatar
Tadeáš Burda
Brigádník
Avatar
Odpovídá na Ondrej Zadrapa
Tadeáš Burda :19.4.2020 13:44

Skus do google zadat : "C# potentiated" co ti to vypluje :-`

 
Nahoru Odpovědět
19.4.2020 13:44
Avatar
Ondrej Zadrapa:19.4.2020 15:57

Tak jsem zrejme pokrocil, jenze mi uz ted pravdepodobne dosly všechny napady, jak z toho ven, kapitolu mam prectenou xkrát, dosahl jsem akorát toho, ze mi ted program zobrazi soucet mezd a průměrnou mzdu, ale porad se mi nepodarilo vnorit spravnym zpusobem, aby mi zobrazil všechny nadprumerne mzdy, moc bych stal o to zjistit, kde delam chybu a jak to konecne zkompletovat podle zadani, na tohle uz asi vazne sam neprijdu, v knize akorát je priklad na GetMax a GetMin, psal jsem to podle toho, vyplivlo mi to vždycky logicky tu nejmensi a největší castku a nejaka alternativa, jak to sestavit, aby to vyplivlo všechny mzdy nad průměrem se tady nepisou. Dekuji

Console.Write("Po­cet zamestnancu: ");
int pocetZamestnancu = Int32.Parse(Con­sole.ReadLine());
int[] mzda = new int[pocetZames­tnancu];
int soucet = 0;
int prumernaMzda = 0;
for (int i = 0; i < pocetZamestnancu; i++)
{
Console.Write("{0}. zamestnanec: ", i + 1);
int zamestnanec = Int32.Parse(Con­sole.ReadLine());

mzda[i] = zamestnanec;
soucet = soucet + zamestnanec;
prumernaMzda = soucet / pocetZamestnancu;
}
int nadprumer = mzda[0];
for (int i = 0; i > mzda.GetLength(i); i++)
{
if (nadprumer > prumernaMzda)
{
nadprumer = mzda[i];
}

}

Console.Write­Line("Soucet mezd: {0} ", soucet);
Console.Write­Line("Prumerna mzda: {0} ", prumernaMzda);
Console.Write­Line("Nadprumer mezd: {0} ", nadprumer);

 
Nahoru Odpovědět
19.4.2020 15:57
Avatar
Tadeáš Burda
Brigádník
Avatar
Odpovídá na Ondrej Zadrapa
Tadeáš Burda :19.4.2020 16:40
Console.Write("Zadaj počet zamestnancov: ");
int poctZamest = int.Parse(Console.ReadLine());

int sucet = 0;
int[] mzdy = new int[poctZamest];

// Načítanie mzdy pre zamestnanca
Console.WriteLine();
for (int i = 0; i < mzdy.Length; i++)
{
    Console.Write($"{i + 1}. mzda: ");
    mzdy[i] = int.Parse(Console.ReadLine());
    sucet += mzdy[i];
}

Console.WriteLine();
Console.WriteLine($"sucet : {sucet}");
Console.WriteLine($"priemer : {sucet / mzdy.Length}");

// Vypis mzdy nad priemer
Console.WriteLine();
Console.WriteLine("Mzdy nad priem.:");
foreach (int mzda in mzdy)
    if (mzda > (sucet / mzdy.Length))
        Console.WriteLine(mzda);

Console.ReadKey();
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
19.4.2020 16:40
Avatar
Tadeáš Burda
Brigádník
Avatar
Odpovídá na Ondrej Zadrapa
Tadeáš Burda :19.4.2020 16:42

Netestoval sem to ale malo by to ist...Používaj tlacitko pre vlozeni kodu aby sa to dalo potebe aj citat ;-) Ak niecomu nechapes tak sa spitaj. Ak to nieje to co chces tak mi sem hod kompletne zadanie lebo asi sa nechapeme. Jo a pouzi "Odpoviedět" aby mi prisla notifikacia...

 
Nahoru Odpovědět
19.4.2020 16:42
Avatar
Ondrej Zadrapa:19.4.2020 16:57

Super, program slape, diky, na to bych fakt neprisel, ale prece jen, jsem v tezkych plenach. Od devate od rana u toho sedim a stejne jsem na to nakonec neprisel. Uz to dela presne, co potrebuju.

 
Nahoru Odpovědět
19.4.2020 16:57
Avatar
Tadeáš Burda
Brigádník
Avatar
Odpovídá na Ondrej Zadrapa
Tadeáš Burda :19.4.2020 17:08

Tak to znac jak spravnu odpived aspon...

 
Nahoru Odpovědět
19.4.2020 17:08
Avatar
Odpovídá na Tadeáš Burda
Ondrej Zadrapa:19.4.2020 17:29

Proto jsem se sem registroval, chci se to naucit, abych při rekvalifikaci nebyl uplne levy a navíc jsem zjistil, ze lamat si nad tim bezvysledne hlavu me celkem bavi, protože nakonec bych na to stejne asi prisel, protože bych se na to nakonec stejne vysral a v knizce je foreach v další kapitole, kterou budu zkouset v dalších dnech, tak by mi to mozna doslo a poradil bych si. I tak diky moc.

 
Nahoru Odpovědět
19.4.2020 17:29
Avatar
Tadeáš Burda
Brigádník
Avatar
Odpovídá na Ondrej Zadrapa
Tadeáš Burda :20.4.2020 7:47

Jj doslo by ti to, len tady vidis ze sem pouzil neco co sem predpokladal ze vis a nevims, bo tady v tutoriale to je v jednej kapitole. Mozes sa to ucit z knihy to je jedno, len potom ta ochota ludi ti pomoct je mala. Mne sa tes nechcelo :-D ale bylo mi ta luto. Raci bych ti pomohel sa ktemu dostat nez ti to proste len napsat hotove. Hlavne ze to de...

 
Nahoru Odpovědět
20.4.2020 7:47
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 14 zpráv z 14.