Ana sayfa
/
Teknoloji
/
Ornek 5 Birx sayisinin bulupyazdiran algoritma ve MATLAB programi. Adim 1 Kullanicidan negatifolmayan xtamsayisini iste Adim 2.x20 vex tamsayiise Adim 3'e git Adim3 sonuc=1al Adim4.x>0 ise Adim 5'de degilse Adimg'a git Adim 5 j=1 al Adim6.sonuc=sonuc"ial Adim7.j=i+1a| Adim8 isxise Adimb'e git Adims sonuc'uyazdir Adim 10 Dur

Soru

Ornek 5 Birx sayisinin bulupyazdiran algoritma ve
MATLAB programi.
Adim 1 Kullanicidan negatifolmayan xtamsayisini iste
Adim 2.x20 vex tamsayiise Adim 3'e git
Adim3 sonuc=1al
Adim4.x>0 ise Adim 5'de degilse Adimg'a git
Adim 5 j=1 al
Adim6.sonuc=sonuc"ial
Adim7.j=i+1a|
Adim8 isxise Adimb'e git
Adims sonuc'uyazdir
Adim 10 Dur

Ornek 5 Birx sayisinin bulupyazdiran algoritma ve MATLAB programi. Adim 1 Kullanicidan negatifolmayan xtamsayisini iste Adim 2.x20 vex tamsayiise Adim 3'e git Adim3 sonuc=1al Adim4.x>0 ise Adim 5'de degilse Adimg'a git Adim 5 j=1 al Adim6.sonuc=sonuc"ial Adim7.j=i+1a| Adim8 isxise Adimb'e git Adims sonuc'uyazdir Adim 10 Dur

Çözüm

4.3326 Voting
avatar
Cem
Kıdemli · 9 yıl öğretmeni
Uzman doğrulaması

Cevap

Örnek 5'de bir x sayısının bulup yazdırılan algoritma ve MATLAB programı şu şekildedir:<br /><br />Adım 1: Kullanıcından negatif olmayan x tam sayıını iste.<br />Adım 2: x'in tam sayı olup olmadığını kontrol et.<br />Adım 3: x'in tam sayı olduğunu kontrol et. Eğer tam sayı ise, Adım 4'e git.<br />Adım 4: x > 0 ise, Adım 5'de değilse, Adım 6'ya git.<br />Adım 5: i = 1 al.<br />Adım 6: sonuc = sonuc * i.<br />Adım 7: j = i + 1.<br />Adım 8: i < x ise, Adım 9'a git.<br />Adım 9: sonuc'u yazdır.<br />Adım 10: Dur.<br /><br />Bu algoritmanın MATLAB programı şu şekildedir:<br /><br />```matlab<br />function sonuc = bulupYazdir(x)<br /> if mod(x, 1) == 0<br /> x = round(x);<br /> end<br /> if x > 0<br /> i = 1;<br /> sonuc = i;<br /> while i <= x<br /> sonuc = sonuc * i;<br /> i = i + 1;<br /> end<br /> end<br /> disp(sonuc);<br />end<br />```<br /><br />Bu programda, `bulupYazdir` adlı bir fonksiyon tanımlıyoruz. Bu fonksiyon, bir sayı `x` alarak, algoritmanın adımlarına göre sonuc'u hesaplar ve yazdırır. `mod(x, 1) == 0` ifadesi, x'in tam sayı olup olmadığını kontrol eder. Eğer x'in tam sayı olmadığını fark edersek, `round(x)` fonksiyonu ile x'i yuvarlarız ve tekrar kontrol ederiz. Bu şekilde, negatif olmayan ve pozitif olan sayılar için de çalışır hale getiririz.
Derecelendirmek için tıklayın: