Çözüldü EKOK - Programlama

Konusu 'Matematik - Geometri' forumundadır ve entalpiX tarafından 26 Şubat 2011 başlatılmıştır.

Yüklüyor...
  1. entalpiX

    entalpiX Yeni Üye

    Mesajlar:
    128
    Beğenileri:
    1
    KLM üç basamaklı, rakamları farklı 900'den büyük bir sayıdır. EKOK (K,L,M)=72 ise kaç farklı KLM sayısı yazılabilir? (Cevap:10)
    Son düzenleyen: Moderatör: 24 Ağustos 2017
     
    : Fortran

  2. Benzer Konular: Programlama
    Forum Başlık Tarih
    Limit ve Süreklilik,Türev,İntegral Üstel Fonksiyonlu Denklem-Türev-Ara Değer (Intermediate Value) Teoremi-Programlama 24 Temmuz 2026
    Hatalı - Tekrarlanmış Sorular veya Çözümler (Faulty - Repeated Questions or Solutions) Polinom Sayısı - Programlama 21 Temmuz 2026
    Doğal Sayılar,Tam Sayılar,Bölme Bölünebilme,EBOB-EKOK Basamak Analizi - Eşitsizlik - Programlama 11 Temmuz 2026
    Doğal Sayılar,Tam Sayılar,Bölme Bölünebilme,EBOB-EKOK Pozitif Tam Sayılar - Programlama 6 Temmuz 2026
    Üniversitelerin Sayısal Bölümlerini Hedefleyen LGS Öğrencileri Olasılık - Programlama (8. Sınıf Seviyesi) 2 Temmuz 2026

  3. murat_16

    murat_16 Yeni Üye

    Mesajlar:
    355
    Beğenileri:
    126
    ekok(k,l,m)=8.9
    900'den büyük olacağına göre k=9
    l=8 ,m=1
    l=8,m=4
    l=8,m=2
    l=8,m=3
    l=8,m=6
    5 tane. Yer değiştirirsek 5 tane de oradan gelir 10 tane
    Son düzenleyen: Moderatör: 11 Temmuz 2023
  4. Honore

    Honore Yönetici Yönetici

    Mesajlar:
    11.303
    Beğenileri:
    652
    Cinsiyet:
    Bay
    Meslek:
    Müh. (Elk./Bilg.)
    Matematik mühendislik, fizik, istatistik gibi alanlarda bilgisayar programlama (kodlama) öğrenmek isteyen öğrenciler için Fortran uygulaması:
    [​IMG]
    https://i.ibb.co/hxZBXxbt/KLM-Fortran.png

    Program:
    Kod:
    ! KLM üç basamaklı, rakamları farklı 900'den büyük bir sayıdır.
    ! EKOK (K,L,M)=72 ise kaç farklı KLM sayısı yazılabilir?
    program K_L_M
    implicit none
    integer :: lcm,K,L,M,sayi,Toplam = 0,LCM_L_M,LCM_K_L
    
    do K = 1, 9; do L = 1, 9; do M = 1, 9
    
       sayi = 100*K + 10*L + M
     
       if (sayi <= 900) cycle
    
       if (((K == L).or.(K == M).or.(L == M))) cycle
    
       LCM_L_M = LCM(L, M); LCM_K_L = LCM(K, L)
    
       if ((LCM(K, LCM(L, M)))==72) then
          if (((LCM(LCM_K_L, M)))==72) then
              print*,sayi; Toplam = Toplam + 1
          endif
       endif
    
    enddo; enddo; enddo
    
    print*,Toplam,"sayi yazilabilir."
    
    end program
    
    !Modified version of https://rosettacode.org/wiki/Least_common_multiple#Fortran
    integer function lcm(a,b)
    integer:: a,b,gcd
    lcm = a*b / gcd(a,b)
    end function lcm
    
    !https://rosettacode.org/wiki/Greatest_common_divisor#Iterative_Euclid_algorithm_3
    integer function gcd(v,t)
    integer, intent(in) :: v, t
    integer :: c, b, a
    b = t
    a = v
    do
      c = mod(a, b)
      if (c == 0) exit
      a = b
      b = c
    end do
    gcd = b
    end function gcd

Sayfayı Paylaş