Хелпикс

Главная

Контакты

Случайная статья





№7 зертханалық жұмыс Программалауға құрылымдық ыңғай.



№7 зертханалық жұ мыс Программалауғ а қ ұ рылымдық ың ғ ай.

Евклид алгоритмi

Теориялық бө лім

Евклид алгоритмi дегенiмiз, ол - терiс емес бү тiн екi санның ең ү лкен ортақ бө лгiшiн (ЕҮ ОБ) табу алгоритмi.

х жә не у – бiр уақ ытта 0-ге тең емес, бү тiн, терiс емес сандар жә не у£ х болсын. Егер у=0 болса, онда ЕҮ ОБ(х, у)=х, ал егер у¹ 0 болса, онда х, у жә не r сандары ү шiн, (мұ ндағ ы r дегенiмiз х: у-тiң қ алдығ ы), ЕҮ ОБ(х, у)=ЕҮ ОБ(у, r) тең дiгi орындалады.

Мысалы, х=48, ал у=18 болсын.

ЕҮ ОБ(48, 18)=ЕҮ ОБ(18, 12) = ЕҮ ОБ(12, 6) = ЕҮ ОБ(6, 0) =6

1-мысал : Терiс емес екi санның ең ү лкен ортақ бө лгiшiн (ЕҮ ОБ) табу бағ дарламасы.

1-ә дiс: Қ алдық тар арқ ылы.

         program algor_evklid;

          var x, y: integer;

begin      

writeln (‘ Екi санды енгiз’ ); readln(x, y);

repeat                                   { циклдiң басы }

     if x> y

          then x: =x mod y     { екi санның ү лкенiн ү лкендi кiшiге 

              else y: =y mod x;   бө лгендегi қ алдық пен ауыстыру}

until (x=0) or (y=0);          { екi санның бiреуi 0-ге тең

                                                    болғ анша, цикл орындалады }

   writeln (‘ЕҮ ОБ= ’, x+y);     readln; end.

2-ә дiс: Айырма арқ ылы.

program algor_evklid;

var x, y: integer;   

begin

writeln (‘ Екi санды енгiз’ ); readln(x, y);

      repeat                                                   { циклдiң басы }

         if x> y

            then x: =x - y else y: =y - x; { екi санның ү лкенiн   

                                                              айырмамен ауыстыру }

      until x=у;            {екi санның тең болғ анша қ айталанады}

   writeln (‘ЕҮ ОБ= ’, x);  readln;    

end.

 

Евклид алгоритмiн негiзге ала отырып, екi санның ең кiшi ортақ еселiгiн (ЕКОЕ) табуғ а болады. Формуласы:    ЕКОЕ(х, у) = х*у/ ЕҮ ОБ(х, у).

 

№8 зертханалық жұ мыс Жолдар

 

Жол дегеніміз – ұ зындығ ы 255-тен артпайтын символдар тізбегі. Тізбектің мағ ынасы болуы міндет емес. Мысал: ‘df56’, ‘*d-шар56‘, ‘*-4 лд’

Жолдар stringжолдық типпен сипатталады. Жолдық типті анық тағ анда ондағ ы символдар санын кө рсетуге болады.

Жазылу форматы:



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.