Şimdi Ara

C++da yardım!!!

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
8
Cevap
0
Favori
413
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • #include <iostream>
    #include <conio.h>
    using namespace std;

    int main() {
    int n;
    cin >> n;

    while (n > 1) {
    if (n%2 != 0) {
    n = n*3 + 1;
    } else {
    n = n/2;
    }
    cout << n << endl;
    }
    getch();
    }


    Arkadaşlar ben n>1 kısmında 1 yerine kesirli bir sayı yazarak işlem yapmak istiyorum ama onun için farklı kodlama yapmak gerekliymiş yardım ederseniz sevinirim.Teşekkürler.



  • n int( tam sayi) yerine doub veya float yapabilirsin.
    yani
    int n yerine
    double n veya float n
  • Sağol yorumun için ama denedim derlemede hata veriyor sanırım başka şeyleride değiştirmek gerekiyor.
  • ...
    while (n > 15/31.0)
    ...



    < Bu mesaj bu kişi tarafından değiştirildi qamyoncu -- 18 Nisan 2012; 19:51:38 >
  • Arkadaşlar kusura bakmayın bir türlü istediğim sonucu alamıyorum bir örnekle anlatırsam daha iyi olur belki.
    sayımız 'n' olsun

    n tek sayı ise 3 ile çarpıp 1 ekliyecem yani

    3n+1

    n çift ise 2ye bölecem yani

    n/2

    Örneğin 3 sayısı

    3.3+1=10
    10/2=5
    5.3+1=16
    16/2=8
    8/2=4
    4/2=2
    2/2=1

    ben burada 3n+1 kısmındaki 1 in yerine kesirli bir sayı yazmak istiyorum.3n+1/2 gibi.
  • #include <iostream>

    using namespace std;

    int main() {

    int n;
    cout<<"Bir sayi giriniz : ";
    cin>>n;

    if(n%2==0)
    {
    n=n/2;
    cout<<n;
    }
    else
    {
    float m=n*3+(0.5);
    cout<<m;
    }
    return 0;
    }



    < Bu mesaj bu kişi tarafından değiştirildi blackwar19 -- 18 Nisan 2012; 23:21:33 >
  • kesirli sayıyı unut 1/2 yerine 0.5 yaz
  • Yapay Zeka’dan İlgili Konular
    Oyunları C veya D ye Kurmak
    14 yıl önce açıldı
    C yardım
    24 yıl önce açıldı
    C++ C'den daha zor bir dil mi?
    2 yıl önce açıldı
    Daha Fazla Göster
  • Tamsayı(int) kullanırken n=1 yazarsın ama eğer kesirli(double) kullanacaksan sayın tam sayı bile olsa n=1 değil n=1.0 yazman gerekli. Aynı şekilde içinde double geçen işlemlerinde ondalıklı sayı girmelisin. Şu an C++ derleyicim yüklü olmadığı için deneyemiyorum ama şu şekilde olmalı.

    2 farklı int değerinin oranını bir double da tutmak istersen şöyle yazman lazım.

     
    int x,y;
    double z ;
    z = x/y*1.0;


    Buradaki işlemin sonucu değiştirmeyecek şekilde ondalık olarak herhangi bir sayı girmemiz gerekli ben bölümü 1.0 ile çarptım. 0.0 ile toplasaydık (z= x/y+0.0;) da olurdu.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.