Články

Microsoft Visual Studio 2022

Datum vydání: 5. 8. 2023

Programujte ve vývojovém prostředí zdarma

Microsoft nabízí zdarma tyto vývojářské nástroje: Visual Studio Community, Visual Studio for Mac a Visual Studio Code. Tyto verze jsou zdarma za určitých podmínek.

Visual Studio Community je plně integrované prostředí (IDE), tj. umožňuje vytvářet a zároveň spouštět zdrojový kód. Je sice zdarma, ale člověk nikdy neví, kdy se může Microsoft rozhodnout tento proprietární vývojářský software nabízet za peníze. Na rozdíl od toho, Visual Studio Code je editor kódu, který je také od Microsoftu zdarma, ale jeho zdrojové kódy jsou k dispozici na github.com pod MIT licencí, takže by měl být snad navždy zdarma.

MathJax – matematika v prohlížečích

Datum vydání: 6. 9. 2020

Pro zobrazování matematických výrazů na webu je vhodné používat např. MathML. Bohužel ho však nepodporují veškeré prohlížeče. V tomto případě nám může pomoci javascriptová knihovna MathJax, která umí zobrazit matematické výrazy prakticky do veškerých důležitých prohlížečů. Jak vypadá výsledek, se můžete podívat například na webu matematika.cz, který MathJax používá.

MathJax pracuje s MathML či LaTeX. Kód LaTeX lze zobrazit např. v editoru LYX volbou Prohlížet » Zdrojový text pro LaTeX. Do MathML umí exportovat i Vzorce z LibreOffice. Pro redakční systémy existují plaginy, které umožní integraci MathJax do redakčního systému. Je podporována Joomla, WordPress, Drupal a další…

MathML

Datum vydání: 6. 9. 2020

Podpora MathML

Matematické výrazy lze HTML zapsat pomocí MathML. Podpora MathML je dobrá v pro prohlížečích Mozilla Firefox. Podporu zobrazuje stránka Mozilly Browser compatibility. Pro ozkoušení podpory MathML je dobrá testovací stránka MathML Torture Test. Dobré zobrazení MathML i v nepodporovaných prohlížečích může zajistit např. javascriptová knihovna MathJax. Grafické editory pěkně shrnuje tutoriál od Mozzily (WYSIYWG Editors).

Bootstrap 4.6

Aktualizováno: 28. 8. 2021, datum vydání: 25. 4. 2020

Bootstrap je CSS framework. Umožňuje rychlé formátování HTML stránek za použití responzivního designu. Bootstrap 4 je starší verzí. Aktuální verze je Bootstrap 5. Rozhodla jsem se používat Bootstrap z důvodu, že umí lépe pracovat s obrázky a lépe je roztahovat dle šířky okna tak, jak potřebuji.

Dokumentace Bootstrap 4.6

Vybírám zde z dokumentace pouze ty části, které často používám:

PHP framework CodeIgniter 3 a 4

Datum vydání: 23. 4. 2020

CodeIgniter je jedním z PHP frameworků, který poskytuje programátorovi základní funkcionalitu webové aplikace. CodeIgniter je považován za jeden z nejjednodušších PHP frameworků vhodných pro začátečníky. Používá MVC model aplikace a je rychlý, snadný na pochopení. Použití šablonovacího systému v šablonách je volitelné, do šablon můžete vkládat přímé PHP příkazy. Zda tento framework může být pro vás vhodný, záleží na velikosti a povaze vašich projektů. Pokud jste samostatný programátor a vaše aplikace nejsou příliš robusní, může být CodeIgniter správnou volbou.

CodeIgniter je vhodný pro začátečníky

V dnešní době je v zahraničí značně populární framework Laravel. Také PHP framework Symphony je hodně populární a je navíc používaný projektem Drupal. Dle tohoto videa je CodeIgniter v porovnání s Laravelem vítězem pro jednoduchý vývoj v jednom člověku, který potřebuje rychle něco naprogramovat. Křivka učení je u CodeIgniter vysoká, kdo zná principy MVC či v nějakém frameworku již programoval, CodeIgniter bude pro něj jednoduchý na pochopení.

SEO - Search engine optimization

Datum vydání: 24. 11. 2019

Tento článek je psán spíš pro úplné začátečníky, kteří o SEO neví skoro vůbec nic a potřebují dostat svůj web na web. SEO je zkratka pro Search engine optimization, tedy optimalizace webu pro vyhledávání. S touto optimalizací, kterou se pak zabývají většinou weboví odborníci, souvisí první věc a to problém, jak dostat nově vzniklou webovou stránku vůbec na web a do vyhledávačů a jak získat její co nejlepší pozici ve výsledcích vyhledávání. První pozice ve výsledcích vyhledávání by chtěli všichni, ale jak asi sami tušíte, to není možné…

Oblíbené programovací jazyky

Datum vydání: 21. 11. 2019

TIOBE

Mezi uznávané žebříčky používanosti a popularity programovacích jazyků patří TIOBE Programming Community Index. Je průběžně aktualizovaný a zohledňuje různá kritéria, podle kterých stanovuje pořadí jazyků. Je na něm vidět i vývoj popularity za posledních 18 let zpětně. Každý si však toto pořadí musí přebrat sám, protože každý jazyk se hodí tak trochu na něco jiného. Zde je pořadí podle TIOBE indexu ke konci roku 2019:

UML Open source

Aktualizováno: 30. 11. 2020, datum vydání: 23. 3. 2017

UML nástroje

Přednášky a teorie UML

Přesměrování domény na jinou doménu

Aktualizováno: 22. 9. 2020, datum vydání: 23. 11. 2014

Přesměrování pomocí .htaccess

Pro úpravu URL a přesměrování lze použít na serveru Apache skrytý soubor .htaccess. Není jednoduché se naučit ho používat, protože využívá regulární výrazy obdobné Perlu. Regulární výrazy lze otestovat pomocí testeru regulárních výrazů. Jednoduché přesměrování lze provést například následujícím způsobem.

Rychlé přesměrování

Tento jednoduchý příklad přesměruje veškeré stránky na novou doménu finmat.cz

RewriteEngine on
RewriteRule (.*) http://www.finmat.cz/

UTF-8 kódování češtiny

Aktualizováno: 20. 6. 2020, datum vydání: 9. 2. 2014

Nejmodernější kódování v dnešní době je kódování UTF 8. Na nově vzniklých webech bývá standardem. Jedná se o 8-bit Unicode. Je určeno pro všechny světové jazyky.

HTML či PHP stránka v UTF 8

Kód

Kódování HTML stránky lze nastavit pomocí meta tagu <meta>:

HTML 5

<meta charset="UTF-8" />

Facebook ikonka

Aktualizováno: 19. 5. 2020, datum vydání: 5. 10. 2013

Jak přidat Like Button na webové stránky

Odkazy na HTML kód, který se umístí do webových stránek, jsou k dispozici v sekci pro vývojáře Social Plugins.

Ochranná známka facebook

Způsoby užití ochranné známky Facebook jsou uveřejněny na webu Facebook Brand Resource Center . Nebo-li nemůžeme si s logem facebooku dělat, co se nám zlíbí. Například nesmíme měnit jeho barvy. Na stránkách Facebooku najdeme doporučené způsoby užití loga f, like ikonky apod. Zdrojové soubory v různých formátech (PNG, EPS, SVG) lze stáhnout ve formátu zip. Co smíme a nesmíme dělat je popsáno na stránkách a před stažením souborů musíme s podmínkami užití předem souhlasit.

Licence BSD a GPL

Aktualizováno: 22. 9. 2020, datum vydání: 6. 4. 2013

Nette GPL či BSD

Konkrétně řeším aplikaci postavenou nad frameworkem Nette. Informací ohledně licencování je na internetu jak šafránu, proto jsem si zde poznamenala pár informací a odkazů, které mi připadají užitečné a snažila se učinit nějaký závěr.

V Nette Frameworku máte na výběr, zda se rozhodnout pro licenci GPL či BSD. Po přečtení základních informací jsem měla jasno v tom, že určitě BSD. Projekt, který dělám, chci využívat i ke komerčním účelům, a pro to je čistě GPL licence nepoužitelná. Pokud jsem to dobře pochopila, tak pokud zveřejníte kód postavený na knihovnách pod licencí GPL, tak musíte svůj kód dát také pod licenci GPL. Možnost GPL licence je tam hlavně z důvodu, aby bylo možné Nette Framework přičlenit k GPL projektům.

NetBeans – zalamování řádků

Aktualizováno: 21. 4. 2020, datum vydání: 13. 2. 2013

Editor NetBeans IDE umí zalamování řádků. Je nutné nastavit volbu v menu: Tools → Options → Editor → Formatting → Line Wrap → After Words.

Netbeans – zalamování řádků

Pascal – zápis do souboru

Aktualizováno: 24. 4. 2020, datum vydání: 29. 11. 2012

Zde je příklad na otevření souboru a zápis do jiného souboru. Jedná se o naprostou jednoduchou kopii obsahu souboru.

Čtení ze souboru a zápis do souboru

Program předpokládá existenci souboru vstup.txt v adresáři C:\Users\Jitka\Desktop\pascal\. Pokud by soubor neexistoval, program je ukončen běhovou chybou.

Čtení a zápis probíhá po znacích

program ZapisDoSouboru;
uses
    crt;
var
    tVstup,tVystup: text;
    znak: char;
begin
    clrScr;

    assign(tVstup, 'C:\Users\Jitka\Desktop\pascal\vstup.txt');
    reset(tVstup);
    assign(tVystup, 'C:\Users\Jitka\Desktop\pascal\vystup.txt');
    rewrite(tVystup);
    while not eof(tVstup) do
    begin
        read(tVstup, znak);
//      write(znak); // kontrolni vypis znaku na obrazovku
        write(tVystup, znak);
    end;
    close(tVstup);
    close(tVystup);

    repeat
    until keyPressed;
end.

Pascal – pole jako parametr procedury

Aktualizováno: 24. 4. 2020, datum vydání: 24. 11. 2012

Uvedu příklad, jak se může pole předávat jako parametr funkce či procedury, případně být jeho návratovou hodnotou funkce.

Pro tyto účely jsem vytvořila funkci pro načtení pole, proceduru pro výpis pole a dvě procedury či funkce pro kopii pole do pole. Procedury pro kopii pole nejsou nutné, protože Pascal sám umí zkopírovat celé pole do jiného pole pomocí prostého přiřazení. Podmínkou je, že pole musí být shodného typu (viz Pavel Satrapa1). Kopírování přiřazením do proměnné probíhá kopírováním hodnotou. Mně zde funkce či procedury pro kopírování pole poslouží jako jednoduchá ukázka možné manipulace s polem. Všechna předávaná pole musí být shodného typu. Nejlépe je, si pro tento účel založit extra typ pole, a to klíčovým slovem type.

Dokumentace Free Pascal

Aktualizováno: 21. 4. 2020, datum vydání: 20. 11. 2012

Na webu Free Pascalu je k dispozici on-line dokumentace.

Funkce

Popis funkcí je uveden v Run-Time Library (RTL) units reference manual.

Jednotka System

Většina základních funkcí je obsažena v jednotce System. Tato jednotka například obsahuje:

Jednotka SysUtils

V SysUtils najdete např. konverzí funkce ze stringu na číslo.

Následující permutace

Aktualizováno: 21. 4. 2020, datum vydání: 15. 11. 2012

Co to je následující permutace?

Permutace n = 1

1

Permutace n = 2

1 2
2 1

Permutace n = 3

1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1

Nastavení DNS záznamů – MX záznam

Aktualizováno: 19. 5. 2020, datum vydání: 31. 10. 2012

Poštovní server může běžet na jiném serveru (jiné IP adrese), než samotný hosting webu. V takovém případě je třeba nastavit extra MX (Mail Exchange) záznam. IP adresy zjistíte od administrátora hostingu, nebo pomocí příkazu ping na doménu.

Nastavení MX záznamu

Zde je příklad nastavení, které lze např. použít u registrátora domén a správce DNS záznamu forpsi.com. Hosting webových stránek a emailový server běží u jiného poskytovatele služeb, tj. nikoli u forpsi. Hosting je na IP 83.167.245.11 a mail je na IP 46.231.29.158.

TTL Typ Hodnota
domena.cz 1800 A 83.167.245.11
mail.domena.cz 1800 A 46.231.29.158
domena.cz 1800 MX 10 mail.domena.cz
*.domena.cz 1800 CNAME

domena.cz

Pascal – ciferný součet čísla

Aktualizováno: 24. 4. 2020, datum vydání: 30. 10. 2012

Zadání příkladu

Program vyzve uživatele k zadání celého čísla. Úkolem programu je sečíst cifry čísla a vypsat tento součet. Např. když uživatel zadá „4652“ program vypíše „17“, protože 4 + 6 + 5 + 2 = 17. Zpracování ciferného součtu má být úkolem funkce, které se předá zadané načtené číslo jako parametr.

Řešení ve Free Pascalu

program CifernySoucet;
uses crt;
var n: integer;

function cifernySoucet(cislo: integer): integer;
var cifra, torzo, soucet: integer;
begin
    soucet := 0;
    torzo := cislo;
    repeat
        cifra := torzo mod 10; // dostanu posledni cifru cisla
        soucet := soucet + cifra;
        torzo := torzo div 10; // uriznu posledni cifru cisla
    until torzo = 0;
    cifernySoucet := soucet;
end;

begin
    clrScr;

    write('Zadejte cislo: ');
    read(n);
    writeln('Ciferny soucet cisla ', n, ' je ', cifernySoucet(n), '.');

    repeat
    until keyPressed;
end.

Správný programátorský styl

Aktualizováno: 20. 4. 2020, datum vydání: 28. 10. 2012

Zásady čitelného kódu

Mezi zásady správného psaní kódu mimo jiné patří:

  • jeden příkaz na jeden řádek,
  • pozitivní zápis podmínek,
  • nepoužívání příkazů skoku,
  • používání výstižných názvů proměnných,
  • správné odsazování,
  • užívání jednotného stylu zápisu identifikátorů.

Pascal – délka nejdelšího stejného úseku

Aktualizováno: 24. 4. 2020, datum vydání: 28. 10. 2012

Zadání příkladu

Program vyzve uživatele k zadání celých kladných čísel. Čísla budou oddělena mezerou (případně enterem). Čísel může být libovolný počet. Čísla budou ukončena nulou. Program zjistí nejdelší shodný úsek posloupnosti čísel a vypíše délku tohoto nejdelšího úseku. Např. pro zadaná čísla „5 7 7 1 1 1 3 3 4 8 7 7 7 7 9 0“ vypíše „4“, protože nejdelší stejný úsek čísel je „7 7 7 7“ a jeho délka je čtyři.

Řešení ve Free Pascalu

program souvislyUsek;
uses crt;
var delkaAkt, delkaNej, cislo, prevCislo: integer;
begin
    clrScr;

    delkaAkt := 0;
    delkaNej := 0;
    prevCislo := 0;

    write('Zadejte kladna cela cisla oddelena mezerou ukoncena nulou: ');
    read(cislo);
    while cislo <> 0 do
    begin
        if cislo = prevCislo then
        begin
            delkaAkt := delkaAkt + 1;
        end
        else // mame novy usek
        begin
            if delkaAkt > delkaNej then
                delkaNej := delkaAkt;
            delkaAkt := 1;
        end;

        prevCislo := cislo;
        read(cislo);
    end;

    // pro pripad, ze by nejdelsi usek byl na konci
    if delkaAkt > delkaNej then
        delkaNej := delkaAkt;

    writeln('Delka nejdelsiho useku je: ', delkaNej);
    repeat until keyPressed;
end.

Pascal – délka nejdelšího rostoucího úseku

Aktualizováno: 24. 4. 2020, datum vydání: 24. 10. 2012

Zadání příkladu

Program vyzve uživatele k zadání celých kladných čísel. Čísla budou oddělena mezerou (případně enterem). Čísel může být libovolný počet. Čísla budou ukončena nulou. Program zjistí nejdelší rostoucí úsek posloupnosti čísel a vypíše délku tohoto nejdelšího úseku. Např. pro zadaná čísla „5 7 1 3 4 8 7 7 9 0“ vypíše „4“, protože nejdelší rostoucí úsek čísel je „1 3 4 8“ a jeho délka je čtyři.

Řešení ve Free Pascalu

program rostouciUsek;
uses crt;
var delkaAkt, delkaNej, cislo, prevCislo: integer;
begin
    clrScr;

    delkaAkt := 0;
    delkaNej := 0;
    prevCislo := 0;

    write('Zadejte kladna cela cisla oddelena mezerou ukoncena nulou: ');
    read(cislo);
    while cislo <> 0 do
    begin
        if cislo > prevCislo then
        begin
            delkaAkt := delkaAkt + 1;
        end
        else // mame novy usek
        begin
            if delkaAkt > delkaNej then
                delkaNej := delkaAkt;
            delkaAkt := 1;
        end;
        prevCislo := cislo;
        read(cislo);
    end;
    // pro pripad, ze by nejdelsi usek byl na konci
    if delkaAkt > delkaNej then
        delkaNej := delkaAkt;

    writeln('Delka nejdelsiho rostouciho useku je: ', delkaNej);
    repeat until keyPressed;
end.

Pascal – součet čísel oddělených mezerou

Aktualizováno: 24. 4. 2020, datum vydání: 17. 10. 2012

Zadání příkladu

Program vyzve uživatele k zadání počtu čísel. Následně si vyžádá čísla oddělená mezerou (případně enterem). Čísla sečte a vypíše součet na obrazovku.

Řešení ve Free Pascalu

program soucet;
uses crt;
var suma, n, i, cislo: integer;
begin
    clrscr;
    write('Zadej pocet cislic: ');
    readln(n);
    if n > 0 then
    begin
        suma := 0;
        write('Zadej cislice oddelene mezerou: ');
        for i := 1 to n do
        begin
            read(cislo);
            suma := suma + cislo;
        end;
        writeln('Soucet vsech cisel je: ', suma);
        repeat until keypressed;
    end;
end.

Pascal – maximum z čísel a četnost maxima

Aktualizováno: 24. 4. 2020, datum vydání: 17. 10. 2012

Zadání příkladu

Program vyzve uživatele k zadání počtu čísel. Následně si vyžádá čísla a zjistí z nich maximální hodnotu a četnost výskytu této maximální hodnoty. Zjištěné údaje vypíše na obrazovku.

Řešení ve Free Pascalu

program maximum;
uses crt;
var max, n, i, cislo, cetnost: integer;
begin
  clrscr; 
  write('Zadej pocet cifer: ');
  readln(n);
  if n > 0 then
  begin
    max := -MAXINT;
    cetnost := 0;
    for i := 1 to n do
    begin
      write('Zadej ', i, '. cislo: ');
      readln(cislo);
      if cislo > max then
      begin
        max := cislo;
        cetnost := 0;
      end;
      if cislo = max then
        cetnost := cetnost + 1;
    end;
    writeln('Maximum ze zadanych cisel je: ', max);
    writeln('Pocet vyskytu maxima (cetnost) je: ', cetnost);
    repeat until keypressed;
  end;
end.

Pascal – stáří versus mládí

Aktualizováno: 24. 4. 2020, datum vydání: 10. 10. 2012

Program podle věku určí, zda je člověk starý či mladý. Berte program s rezervou :).

Jde o jednoduchý příklad pro začátečníky pro procvičení podmínky if a čtení vstupů a výstupů.

Zdrojový kód Free Pascal

program Stari;
var vek: integer;
begin
  write('Zadej vek: ');
  readln(vek);
  if vek < 20 then
    write('Jsi jeste mlady, to se mas.')
  else
    write('Tak to jsi uz pekne stary :-).');
  readln;
end.

Zákaz přístupu do adresáře webu

Aktualizováno: 24. 11. 2019, datum vydání: 15. 9. 2012

Soubor .htaccess

Zakázat přístup do určitého adresáře na webovém serveru Apache (např. adresáře s knihovnami php funkcí či jinými includovanými soubory) můžete jednoduše tak, že do daného adresáře umístíte skrytý soubor .htaccess. To, že soubor je skrytý, zajišťuje název souboru začínající tečkou. Jde o textový soubor, ale bez přípony txt.

Stačí, když soubor .htaccess bude obsahovat text:

Order Allow,Deny
Deny from all

Programovací jazyky zdarma pro komerční použití

Aktualizováno: 9. 12. 2020, datum vydání: 20. 2. 2012

Před použitím daného programovacího jazyka (resp. vývojového prostředí) si ověřte aktuální znění licencí a legálnost použití jazyků pro vaše účely. Licence se mohou změnit a za správnost níže uvedeného výčtu ruku do ohně nedám.

JazykLicence a informace
OpenJDK Jde o distribuci Javy verze 8 firmou Oracle. Tato distribuce je ještě pod licencí svobodného software: GPLv2 na rozdíl např. od distribuce Oracle Java SE, která již podléhá nové přísnější Oracle licenci, jež zakazuje komerční použití bez předplatného. Oracle v roce 2019 značně změnil a zpřísnil licenční podmínky pro použití Javy.
C, C++ a Objective-C Stačí najít překladač kódu např. Clang/LLVM, GCC.
C#

C# byl vyvinut firmou Microsoft a pracuje s ním převážně vývojové prostředí Visual Studia od Microsoftu. Visual Studio Community 2019 je bezplatné integrované vývojové prostředí (IDE) pro studenty, vývojáře pro open-source a individuální vývojáře. Samostatní vývojáři mohou se sadou Visual Studio Community vytvářet své vlastní bezplatné i placené aplikace, blíže viz licenční podmínky.

Visual Studio Community 2019 pracuje s jazyky C#, .NET a C++, VisualBasic - možné distribuovat uzavřený kód. Pokročilejší věci jsou ale k dispozici v placených verzích Microsoft Visual Studia a nikoli v edici Community, která je zdarma.

Kromě Visual Studia jsou k dispozici i jiné kompilátory C#, které jsou pod free licencemi.

PHP Open source. PHP Licensing - licence ve stylu BSD licence bez omezení "copyleft". PHP je obvykle využito s databází MySQL (MariaDB) či PostgreSQL a webovým serverem Apache.
Pascal

Kompilátor Free Pascal je k dispozici zdarma pod licencí GNU General Public License. V původním pascalu toho asi moc kromě školních příkladů nenapíšete.

Nicméně zajímavý je již Lazarus, což je profesionální Free Pascal RAD IDE. Měl by být kompatibilní s Delphi. Můžete v něm vytvářet rozličný software pod open source či komerční licencí. Editor kódu Atom by měl mít balíček s podporou Pascalu.

Ruby Ruby se stalo slavným po uvedení frameworku Ruby on Rails. Jde o framework implementující MVC model-view-controller architekturu. Ruby on Rails je pod MIT licence. Ruby je open source.

SyntaxHighlighter

Aktualizováno: 12. 11. 2019, datum vydání: 18. 11. 2011

Pro zvýraznění syntaxe zdrojových souborů programovacích jazyků jsem si stáhla SyntaxHighlighter 3.0.83. Jde o zvýrazňovač syntaxe napsaný v JavaScriptu. SyntaxHighlighter dokáže automaticky naformátovat kód podle syntaxe daného jazyka, který máte napsaný v HTML v tagu <pre>.

Implemantace

Jeho implementace do webových stránek je celkem jednoduchá. Aktuální SyntaxHighlighter je k dispozici ke stažení na GitHubu. Následující poznámky se týkají starší verze 3.0.83.

Pascal – Druhé maximum

Aktualizováno: 24. 4. 2020, datum vydání: 17. 11. 2011

Program vypíše v pořadí druhé maximum ze zadaných čísel. Skonční zadáním čísla -999. Pokud jsou některá čísla shodná (např. 5 5 9 9 1 2), vypíše jako druhé maximum číslo 5.

Zdrojový kód Free Pascal

program DruheMaximum;
uses crt;
var cislo, max, max2: Integer;
begin
   clrScr;

   writeln('Program vypise druhe nejvetsi cislo ze zadanych celych cisel. Konec = -999.');
   max := -MAXINT; //-32768
   max2 := max;
   repeat
      write('Zadejte cislo: ');
      readln(cislo);
      if (cislo <> -999) then
      begin
         if (cislo > max) then
         begin
            max2 := max;
            max := cislo;
         end
         else
            if ((cislo < max) and (cislo > max2)) then // cislo je mezi dosavadnim maximem a druhym maximem a neni rovno maximu
               max2 := cislo;
      end;
   until (cislo = -999);
   writeln('Druhe nejvetsi cislo ze zadanych cisel je: ',  max2);

   repeat
   until keyPressed;
end.

Pascal – Maximum z čísel

Aktualizováno: 24. 4. 2020, datum vydání: 17. 11. 2011

Program vytiskne maximum ze zadaných čísel. Po zadání čísla -999 program skončí.

Zdrojový kód Free Pascal

While cyklus

program Maximum;
uses crt;
var cislo, max: integer;
begin
   clrScr;

   writeln('Program vypise maximum ze zadanych celych cisel. Konec = -999.');
   max := -MAXINT; //-32768

   write('Zadejte cislo: ');
   readln(cislo);
   while (cislo <> -999) do
   begin
      if (cislo > max) then
         max := cislo;
      write('Zadejte cislo: ');
      readln(cislo);
   end;
   writeln('Maximum ze zadanych cisel je: ', max);

   repeat
   until keyPressed;
end.

Pascal – Podíl dvou celých čísel

Aktualizováno: 24. 4. 2020, datum vydání: 14. 11. 2011

Program spočítá podíl dvou celých čísel. Vrátí celočíselný výsledek a k němu zbytek. Dále vrátí reálný výsledek.

Zdrojový kód Free Pascal

program PodilDvouCisel;
uses crt;
var
   a, b, c, zbytek: integer;
   cReal: real;
begin
   clrScr;

   // nacteni vstupu
   writeln('Program pocita celociselny a realny podil dvou celych cisel A a B.');
   write('Zadejte cislo A (delence): ');
   readln(a);
   write('Zadejte cislo B (delitele): ');
   readln(b);

   // vypocet a zobrazeni vystupu
   if (b = 0) then
   begin
      writeln('Nulou nelze delit!');
   end
   else
   begin
      // celociselne deleni
      c := a div b;
      zbytek := a mod b; // zbytek po celociselnem deleni
      writeln('Celociselny podil A div B = ', c);
      writeln('Zbytek po celociselnem deleni A mod B = ', zbytek);
 
      // realne deleni
      cReal := a / b;
      writeln('Realny podil A/B = ', cReal:7:5); // zobrazeni na 5 desetinnych mist
   end;

   repeat
   until keyPressed;
end.

Pascal – Ahoj světe!

Aktualizováno: 24. 4. 2020, datum vydání: 14. 11. 2011

Program vytiskne na obrazovku text „Ahoj světe!“.

Zdrojový kód Free Pascal

program AhojSvete;
uses crt;
begin
   clrScr;
   writeln('Ahoj svete!');
   repeat
   until keyPressed;
end.

Pascal – Prvočísla – Eratosthenovo síto

Aktualizováno: 24. 4. 2020, datum vydání: 23. 4. 2011

Program vytiskne prvočísla do zadané hodnoty N. Použije se při tom algoritmu tzv. Eratosthenova síta.

Zdrojový kód Free Pascal

program Prvocisla;
uses Crt;
const MAX_N = 10000;
var
    n, i, nasobek: integer;
    sito: array[2..MAX_N] of boolean; // true = je prvocislo, false = neni prvocislo
begin
    clrScr;

    writeln('Program vypise prvocisla do zadane hodnoty N <= ', MAX_N);
    write('Zadejte kladne cele cislo N: ');
    readln(n);

    if (n > 0) and (n <= MAX_N) then
    begin
        for i := 2 to n do
            sito[i] := true; // nastavime vsechna cisla na prvocisla
        for i := 2 to n do
        begin
            if sito[i] then // pokud je prvocislo
            begin
                nasobek := 2 * i;
                while nasobek <= n do
                begin
                    sito[nasobek] := false; // nasobky nejsou prvocisla
                    nasobek := nasobek + i;
                end;
            end
        end;

        // vytiskneme prvocisla
        write('Prvocisla jsou: ');
        for i := 2 to n do
        begin
            if (sito[i]) then
                write(i, ' ');
        end;
    end;

    repeat
    until keyPressed;
end.

Naprogramujte si vlastní kalendář

Aktualizováno: 10. 11. 2019, datum vydání: 23. 4. 2011

Hledáte funkci, která by určila, zda je rok přestupný či nikoli? Zde je připravena jednoduchá funkce napsaná v PHP, která vrátí True nebo False podle toho, zda je zadaný rok v parametru přestupný. Pokud znáte pak běžnou délku měsíců v roce, jste si už schopni sami naprogramovat vlastní kalendář. V dnešní době se používá tzv. gregoriánský kalednář...

Programovací jazyky

Aktualizováno: 7. 11. 2019, datum vydání: 1. 3. 2011

Pro zajímavost bych sem chtěla dát odkaz na TIOBE Programming Community Index, který ukazuje preferenci programovacích jazyků. C, Java, C++, Objective-C, PHP, C# jsou na předních příčkách. Usage of server-side programming languages for websites ukazuje používané jazyky pro web.

Pascal

Pro programování v pascalu lze využívat Free Pascal.

PHP a MySQL

Pro editaci kódu používám zatím jednoduchý textový editor PSPad dostupný zdarma. PSPad umí syntaxi PHP a připojení na FTP.

Pro zkoušení skriptů PHP a databáze MySQL můžete využívat hostingy zdarma či jinou širokou nabídku hostingů. Jde o hosting zdarma s reklamní lištou, ale ta příliš neruší a neovlivňuje html soubory - zdrojové html soubory zůstávají v původním tvaru. Nejlepší bude, když si zřídíte na něm vlastní účet, který pak budete používat.

EasyPHP

Pokud chcete provozovat PHP a MySQL jednoduše přímo na svém počítači, tak doporučuji nainstalovat například EasyPHP či ještě lépe XAMPP (Apache + MariaDB + PHP + Perl).

Další články