Navigace: Hlavní stránka -> PASCAL -> 02 Jednoduché výpočty s podmínkou -> 02.03 Výpočet hodnot funkcí z hodnoty x

MENU

02.03 Výpočet hodnot funkcí

Zadání:
Sestavte program, který vypočte z hodnoty x hodnoty y1-y6 podle vzorců:

Řešení:
Pomocí standardních funkcí programovacího jazyku vypočítat z hodnoty x hodnoty y1 - y6.
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var x,y:real;

begin

   writeln('Zadejte hodnotu x: ');
   readln(x);

   if (x-2=0) or (2*x+1=0) or (x+3=0) or (x-7=0) or (2*x-3=0)
   then
      writeln('Vypocet nelze provest')
   else
   begin
      y:=(2*x+3)/(x-2);
      writeln('y1=',y:0:3);
      y:=(x-2)/(2*x+1);
      writeln('y2=',y:0:3);
      y:=(sqr(x)-9)/(x+3);
      writeln('y3=',y:0:3);
      y:=x/(x-7);
      writeln('y4=',y:0:3);
      y:=(4*sqr(x)-3*x)/5;
      writeln('y5=',y:0:3);
      y:=(sqr(x)-5)/(x+3)-sqr(x-5)/(sqr(2*x-3)*(2*x-3));
      writeln('y6=',y:0:3);
   end;

   readln;

end.
program ke stažení
Pro studenty:
Při převodu do programovacího jazyku je třeba dát si pozor ve zlomcích na správné použití závorek.
Druhé mocniny lze napsat také jako x*x, ovšem varianta sqr(x) je rychlejší.
Třetí mocninu lze rozepsat jako x*x*x, opět varianta sqr(x)*x je rychlejší.

Pro učitele:
Hodnoty x, pro které lze vypočítat všech šest hodnot y jsou např. {0},{1},{4}.
V šestém vzorci lze použít i jinou mocninu ve jmenovateli, je vhodné ukázat, jaký je rozdíl mezi sqr(sqr(sqr(x))) a sqr(x)*sqr(x)*sqr(x).
Na závěr lze ukázat, že výrazy sqr(sqr(x)) a sqr(x)*sqr(x) se rovnají.
Doporučuji upozornit studenty, že lépe se mocniny a odmocniny řeší pomocí logaritmů či cyklů.