Uses strutils;
Begin
WriteLn(intToBin(%1010 + %0011, 5)); // dvě binární čísla a počet číslic ve výsledku
End.
Uses strutils;
Begin
WriteLn(intToBin(%1010 + %0011, 5)); // dvě binární čísla a počet číslic ve výsledku
End.
#31 Montezo
Nevím, rád bych si zkusil jaký to je, ale ve 40 junior je eklhaft. Jinak silně doporučuju znovu zvážit se šéfem volbu jazyka. Řídící systém, co se nalije do rozvaděče - to bereš C# (BMW M3) na práci, na kterou potřebuješ C/C++ (Land/Range Rover)
"Ty třídy už jsou prefabrikovaný" - mám pocit, že se škaredě mýlíš v očekávání. Ano, C# má spoustu objektů s plno metodami, ale to každý OOP jazyk dnes. Ono připojit dnes nějaký vlastní hw k PC to není žádná sranda. Kde jsou časy, kdy každý počítač měl RS232 (COM port) nebo dokonce LPT. Na LPT šlo posílat z C přímo na vybraný pin. Myslím, že to byl příkaz outportb(0x378,hexadata) Tomu je dnes konec. Dnes už jen usb a to je vyšší dívčí.
Dobrý kurz C# je na itnetwork.cz. Můžeš dát pár podrobností(kolik ti řádově je let, jestli máš už předjednanou práci, jestli ten kurz bude hradit pracák, jak si je k tomu přesvědčil...) dík!
Chápu tě. Tak to vem takhle. Postupoval jsi podle nějaké své logiky, která tě naváděla, jak problém řešit. OK, měl jsi tam chyby, ale v zásadě to byl jeden možný způsob. BSD ti ho vyladil do úplné dokonalosti. Lépe, než je to v příspěvku #17, to tou Tvojí cestou nejde. Ale je tu ale. Podívej se na moje řešení v příspěvku #14. Tvůj způsob, ač funguje, není správně. Ten kód je hrozně dlouhý, je tam spousta rozhodování a to je jednak při složitějších problémech těžké na čtení a hlavně je to úplné semeniště možných chyb. Moje řešení má tři řádky. Je triviální, není prostor pro chybu a každý mu hned porozumí. Pokud ještě neumíš pole, rovnou tomu věnuj 15 minut a nauč se alespoň základní, to, které jsem použil. Třeba tady:
BDS jako fakt 'pro začátečníky'? :-)
S tím jaký kód tu postoval se c# zabývá tak týden. Garantuju ti, že tvůj kód ani nepřečte, natož aby ho reprodukoval (zápis podmínek, logika if, předávání hodnot parametry...). Sám psal, že nezná ani metody na polích, tvůj kód je pro něj na několik hodin studia.
int[] hodnoty = new int[] { 40, 78, 55 };
Array.Sort(hodnoty);
Console.WriteLine("Prostřední číslo má hodnotu: {0}", hodnoty[1]);
Přiřazení Array.Sort(hodnoty)[1] dává chybu https://docs.microsoft.com/en-us/dotnet/csharp/misc/cs0021?f1url=%3FappId%3Droslyn%26k%3Dk(CS0021)
Něco ve smyslu:
static void Vypis(string retezec)
{
Console.WriteLine(DateTime.Now.ToString("[hh:mm:ss] ") + retezec);
}
static void Main(string[] args)
{
Vypis("Zhavil");
Vypis("Beda");
Vypis("zhavil");
Vypis("drat");
}
Ok tak já to vezmu podrobně. Úkolem je naprogramovat deník pomocí spojového seznamu. Deník má uzel záznam (třída Záznam, který se skládá z prop. Datum a prop. Text. Záznam má konstruktor předávající datum a text do těch properties a prázdný konstruktor pro vytvoření prvního záznamu. Nic víc ve třídě není. Všechno ostatní je pak ve statických metodách v Programu, mimo Main.
Deník umí založit záznam, uložit záznam, smazat záznam a posouvat se od aktuálního k následujícímu nebo předchozímu.
Metoda static Zaznam VytvorNovyZaznam() si od uživatele vezme datum záznamu a text, zpracuje to (TryParse atd) a hotové datum a text ve správných formátech předá do konstruktoru, který vytvoří nový záznam. Ten se pak uloží na konec LinkedListu. Snad jsem to napsal srozumitelně.
Vytváří nové nody - každá noda je jeden záznam. Je i to špatně?
Omlouvám se a celé toto vlákno beru zpět. Ukazuje se, že jsem naprosto nepochopil princip vytváření a pak přecházení z uzlu do uzlu. Učím se c# jako úplný samouk bez lektora a někdy holt hlava vymýšlí nesmysly. S tím, jak pořád plavu v oop je to někdy kombinace k vzteku. Konstrukce o kterou mi šlo:
LinkedList<Zaznam> zaznamy = new LinkedList<Zaznam>();
LinkedListNode<Zaznam> aktualniZaznamUzel = zaznamy.First;
Zaznam zaznam = VytvorNovyZaznam();
static Zaznam VytvorNovyZaznam()
{
// získání data a textu
return new Zaznam(datum, text)
}
potom už se můžu posouvat mezi nodami
aktualniZaznamUzel = aktualniZaznamUzel.Next;
Ještě jednou díky za snahu mi pomoct. Mám chuť to vzdát....
Datum = seznam.last.value.nDatum
//a teď by mělo být něco jako
Datum2 = seznam.last.previous.value.nDatum
Datum3 = seznam.last.previous.previous.value.nDatum
//A když se nacházím kdekoliv na tom link listu neexistuje něco jako
DatumX = seznam.aktualniNoda.value.nDatum
DatumY = seznam.aktualniNoda.next.value.nDatum
Dobrý den vespolek, řeším linked list - nacházím se někde uvnitř (např. tři nody od začátku a pět nodů od konce) . Nemůžu přijít na to, jak se přesunu k další nodě (nebo předchozí). Metody Next a Previous fungují jen u první a poslední. Poradí někdo prosím?