Вторник, 30.04.2024, 02:53
Приветствую Вас Гость | RSS
Главная | Математикадык маселелерди программалоо. Квадраттык тендеме. | Регистрация | Вход
Меню сайта
Форма входа
Поиск
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Welcome to the international level
Математикадык маселелерди программалоо. Квадраттык тендеме. 24.02.2014

FPC.
Баскыч 1,  diskriminant функциясын иштетет, функция массивти чыгарат, бул жерде res[0]-дискриминант, res[1]-x1, res[2]-x2.
Баскыч 1, жоопту чыгарып берет. Бир тоскоолдук бар, эгерде x1 жана x2 болчок болуп калса, тактык жоголот.

Component Pascal.
Жыйынтыкты жыгаруу таза болбой калды, коп орун эледи.
 
C++.
Массивтердин артынан текшериш керек экен, муну мага форумдарда айтышты. Программанын жарымын бутуруу учун ошол форумдакылар жардам беришти, массивти кайтарууну жакшы тушуно албадым. Менин жумушум паскаль кодун c++ кодуна кочуруу болчу, мен эн жонокойун котордум, операцияларды жана жыйнтыкты чыгарууну.

JavaScript.
Паскальдакыдай процедура жана функцияга болушту уйроно элекмин, ошон учун жыйынтыкты чыгаруунун эн оной жолун издедим. Интернет барактарынан окудум процедура жана функциянын ордуна метод термини JS те колдонулат экен. Жакшыраак кызыгып карасаныз код абдан эле женил, паскальга окшош. Программаны иштетиш учун кодту файлдын_аты.html форматында сактап ачыныз.

________________________________________
//Fee Pascal(Lazarus)

unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

type
  massiv_type = array[0..2] of real;

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

function diskriminant(a:real; b:real; c:real):massiv_type;
var
d:real;
x_1:real;
x_2:real;
res:massiv_type;
begin
   d:=(b*b)-(4*a*c);
   if d>=0 then
   begin
        x_1:=(-b-Sqrt(d))/(2*a);
        x_2:=(-b+Sqrt(d))/(2*a);

        res[0]:=d;
        res[1]:=x_1;
        res[2]:=x_2;
   end;

   if d<0 then
   begin
        res[0]:=d;
        res[1]:=0;
        res[2]:=0;
   end;

Result:=res;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 res:massiv_type;
begin
   res:=diskriminant(1,-5,4);
   ShowMessage('Diskriminant='+FloatToStr(res[0]));
   ShowMessage('X_1 ='+FloatToStr(res[1]));
   ShowMessage('X_2 ='+FloatToStr(res[2]));
end;

end.
________________________________________

________________________________________
(*Component  Pascal(Black Box)*)

________________________________________

________________________________________
/*GCC(Code::Bloks)*/

#include <iostream>
#include <cmath>
#define nullptr NULL


using namespace std;


float *diskriminant(float a, float b, float c, size_t arraySize = 3)
{
    float d;
    float x_1;
    float x_2;

    float *res = new float [arraySize];

    d = (b*b) - (4 * a*c);
    if (d >= 0)
    {
        x_1=(-b-sqrt(d))/(2*a);
        x_2=(-b+sqrt(d))/(2*a);

        res[0] = d;
        res[1] = x_1;
        res[2] = x_2;
    }

    if (d<0)
    {
        res[0] = 0;
        res[1] = 0;
        res[2] = 0;
    }

    return res;
}

int main()
{
    float *res = diskriminant(1, -5, 4);
    cout << "diskriminant=" << endl;
    cout << res[0] << endl;

    cout << "x1=" << endl;
    cout << res[1] << endl;

    cout << "x2=" << endl;
    cout << res[2] << endl;

    delete [] res;
    res = nullptr;

    return 0;
}
________________________________________

________________________________________
//JavaScript

<html>
<body>
<script type='text/javascript'>

document.write('13_JS_quadratic equation' + '<br />' + '<br />');

a = 1;
b = -5;
c = 4;

d = (b*b)-(4*a*c);


if (d>=0) 
{
  x_1 = (-b-Math.sqrt(d))/(2*a);
  x_2 = (-b+Math.sqrt(d))/(2*a);

  document.write('d=  ' + d + '<br />');
  document.write('x_1=  ' + x_1 + '<br />');
  document.write('x_2=  ' + x_2 + '<br />'); 
}


if (d<0) 
{
  document.write('d=  ' + d + '<br />');
  document.write('x_1=  ' + '0' + '<br />');
  document.write('x_2=  ' + '0' + '<br />'); 
}

</script>
</body>
</html>
________________________________________

Linux Mint 13 системасында текшерилген. Суроолорунуздар болсо жонотсонор болот, manas_anarovСОБАЧКАмейл.ру, почтанын дареги спамдан атайын бекитилген.
Сделать бесплатный сайт с uCozCopyright MyCorp © 2024