c# pomoc s kodem

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

vik822
Level 1.5
Level 1.5
Příspěvky: 123
Registrován: srpen 12
Pohlaví: Muž
Stav:
Offline

c# pomoc s kodem

Příspěvekod vik822 » 17 úno 2014 20:13

Dobrý den, zkouším si dělat v C# a jsem začátečník, dělám program, že z 5 čísel nejvyšší a nejnižší smaže a zbylé sečte v grafickém prostředí, udělal jsem to co mám v příloze, ale když napíšu víc stejných čísel, tak nefunguje, jinak jo. Vím, že to není úplně šťastné řešení, ale jsem rád, že jsem něco vyplodil, jen nevím jak to ošetřit. Prosím o radu a nebo i návrh na lepší řešení, děkuji :))
Přílohy
1.png
2.png

Reklama
Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7397
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: c# pomoc s kodem

Příspěvekod faraon » 17 úno 2014 20:19

A nebylo by lepší použít pole a ta čísla nejdřív seřadit?
Nebo aspoň těch pět proměnných projít a extrémy vyhodit někam bokem, tak abys pracoval jen s tím tvým rozmezím?
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

vik822
Level 1.5
Level 1.5
Příspěvky: 123
Registrován: srpen 12
Pohlaví: Muž
Stav:
Offline

Re: c# pomoc s kodem

Příspěvekod vik822 » 17 úno 2014 20:21

Jo určitě si myslím, že přes pole by to bylo lepší, ale ještě je moc neumím :D nevim jak bych to zapsal, s tím mam problém největší :D

Uživatelský avatar
domitea
Tvůrce článků
Level 4.5
Level 4.5
Příspěvky: 1971
Registrován: červen 09
Bydliště: Královehradecký kraj
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: c# pomoc s kodem

Příspěvekod domitea » 17 úno 2014 20:23

Kam přesně zadáváš ty stejná čísla? Ono totiž, když se porovnávají pouze vůči jedné známce a né ještě mezi sebou, tak to někdy takhle nefunguje ;)

P.S: Na zdrojáky tu je tag [code] :smile:

vik822
Level 1.5
Level 1.5
Příspěvky: 123
Registrován: srpen 12
Pohlaví: Muž
Stav:
Offline

Re: c# pomoc s kodem

Příspěvekod vik822 » 17 úno 2014 20:28

Tady je to v grafice, když zadam takhle ty 3 čísla stejné, tak se to po.... :D jinak to funguje, asi je teda musim nějak porovnat, ale nevim jak :D
Přílohy
3.png

Uživatelský avatar
domitea
Tvůrce článků
Level 4.5
Level 4.5
Příspěvky: 1971
Registrován: červen 09
Bydliště: Královehradecký kraj
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: c# pomoc s kodem

Příspěvekod domitea » 17 úno 2014 20:33

Naházíš do kolekce (nebo seznamu), zavoláš nějaký sort, poslední změníš na nulu a všechny sečteš.... Je to kanón na vrabce, ale takhle se to dnes dělá. Pro tebe to ale je odstrašující příklad!

Počkej si na Faraona, ten ti napíše krásnou esej na seřazení ;)

vik822
Level 1.5
Level 1.5
Příspěvky: 123
Registrován: srpen 12
Pohlaví: Muž
Stav:
Offline

Re: c# pomoc s kodem

Příspěvekod vik822 » 17 úno 2014 20:37

Nejspíš budu potřebovat doučování :D když to je odstrašující, tak by se to dělat nemělo? :D proč se to dnes tedy dělá? :D nějaký kontakt, abych mu mohl napsat do zpráv? :) díky :)

Uživatelský avatar
domitea
Tvůrce článků
Level 4.5
Level 4.5
Příspěvky: 1971
Registrován: červen 09
Bydliště: Královehradecký kraj
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: c# pomoc s kodem

Příspěvekod domitea » 17 úno 2014 20:41

Počkej si na něj, on odpoví ;)

Na to tohle je vhodné pole (float[] cisla = new float[5]). Potom pomocí napsané funkce na setřídění (tady postačí BubbleSort) si čísla setřídíš. Potom budeš mít na posledním místě to nejnižší číslo (nebo na prvním, podle toho jak si to napíšeš ;) ) a místo něj dáš 0, potom pomocí cyklu uděláš součet a máš to ;)

vik822
Level 1.5
Level 1.5
Příspěvky: 123
Registrován: srpen 12
Pohlaví: Muž
Stav:
Offline

Re: c# pomoc s kodem

Příspěvekod vik822 » 17 úno 2014 20:58

dobře díky, počkám na něj :) dneska už to nechám :D stejnak nevim jak tam ten bubble sort přidat nějak :D

Uživatelský avatar
Sender
Level 3.5
Level 3.5
Příspěvky: 700
Registrován: leden 07
Bydliště: Vysočina
Pohlaví: Muž
Stav:
Offline

Re: c# pomoc s kodem

Příspěvekod Sender » 17 úno 2014 21:05

C# neumím,ale napsat to v jiným programovacím jazyce by byla sranda.Řešil bych to tak,že bych čísla srovnal (porovnání v cyklu) a pak s nimi pracoval podle potřeby.

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7397
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: c# pomoc s kodem

Příspěvekod faraon » 18 úno 2014 04:04

Když ještě neumíš pole, tak to zkusíme přímo s proměnnými. Pro přehlednost si je přejmenuji na A,B,C,D,E. Pak budeš potřebovat ještě nějakou dočasnou na prohazování obsahů, třeba T jako temp.
Po zadání všech pěti čísel (šlo by to i během zadávání) si je projdeš a porovnáš s krajními, uděláme to tak že v A bude nejmenší a v E největší, na pořadí zbylých B,C,D tentokrát nezáleží, z těch jen vypočítáš výsledek.
Z toho je vidět že ty krajní s ničím porovnávat nemusíš, stačí tedy otestovat ty tři uprostřed, a pokud je potřeba, prohodit je s krajními:

Takhle to provedeš pro vyhození minima z B do A:

Kód: Vybrat vše

if (B < A)
   {
   T = A;
   A = B;
   B = T;
   }

Takhle pro vyhození maxima z B do E:

Kód: Vybrat vše

if (B > E)
   {
   T = E;
   E = B;
   B = T;
   }

To samé musíš potom udělat i s C a D. Kdybys měl pole a prováděl to cyklem, nemusel bys to vypisovat třikrát za sebou ;-)
Když v nich bude nové minimum nebo maximum, tak se prohodí s tím bývalým, takže se nakonec může stát že se čísla mezi sebou proházela úplně, pokud by to mělo něčemu vadit, musel by se vymyslet jiný postup.

Pokud tam budeš mít víc stejných čísel, tak se samozřejmě do těch krajních vyhodí jen jedno z nich a ostatní zůstanou uvnitř, s tím počítej.

A než to naťukáš do počítače, zkus si to nejdřív ručně na stole. Nastříhej si pět lístečků, na ně napiš různá čísla, zamíchej je, a potom s nimi prováděj tenhle postup. Vyzkoušej to několikrát pro různé kombinace, ať vidíš co se přesně v tom programu děje.
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

vik822
Level 1.5
Level 1.5
Příspěvky: 123
Registrován: srpen 12
Pohlaví: Muž
Stav:
Offline

Re: c# pomoc s kodem

Příspěvekod vik822 » 22 úno 2014 15:12

Díky moc du se na to podívat jestli to nějak dokážu předělat, každopádně mohl byste mi říci jak by se to udělalo přes ty pole? nebo nějakým bubble sortem? :)) děkuju.

--- Doplnění předchozího příspěvku (22 Úno 2014 15:38) ---

Super, funguje to, ale teď bych se ještě rád naučil jak to zkrátit přes ty pole a cykly, vážně bych byl moc vděčný, ale i tak to stačí, díky moc :))


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Pomoc s webem
    od Tay » 09 úno 2025 15:53 » v Web-tipy a vaše weby
    5
    19811
    od Tay Zobrazit poslední příspěvek
    10 úno 2025 12:09
  • Pomoc při taktu Příloha(y)
    od ondyN » 14 led 2025 15:53 » v Taktování a další úpravy PC
    2
    6794
    od Dyonysos Zobrazit poslední příspěvek
    14 led 2025 16:19
  • Pomoc pri upgrade procesoru
    od filipo88 » 16 úno 2025 19:11 » v Rady s výběrem hw a sestavením PC
    5
    3049
    od petr22 Zobrazit poslední příspěvek
    17 úno 2025 12:45
  • Pomoc s výběrem PC monitoru. Příloha(y)
    od ski1961 » 17 dub 2025 11:17 » v Rady s výběrem hw a sestavením PC
    29
    6509
    od windroid2 Zobrazit poslední příspěvek
    22 dub 2025 20:28
  • Pomoc s výběrem herního PC
    od RyeNi » 31 bře 2025 12:00 » v Rady s výběrem hw a sestavením PC
    5
    2723
    od Alferi Zobrazit poslední příspěvek
    31 bře 2025 19:37

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 1 host