Şimdi Ara

C/C++/C# Sorularınız Buraya. . .(GÜNCEL) (207. sayfa)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4.174
Cevap
118
Favori
165.491
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
3 oy
Öne Çıkar
Sayfa: önceki 205206207208209
Sayfaya Git
Git
sonraki
Giriş
Mesaj
  • Raiverd R kullanıcısına yanıt
    Nasıl yani?

    Kesirli bir sayıyı string'e mi çevirmek istiyorsunuz?
  • Merhaba ; c#'ta sayının sadece kesirli kısmını döndüren bir program yazdırmak istiyorum. Örneğin; 20,45 ise 0,45'i döndürmesi gibi. Yardımcı olursanız sevinirim.
  • Barcow B kullanıcısına yanıt
    Sayıyı aşağı yuvarlayıp(floor) orijinal değerden çıkararak kesirli kısmı elde edebilirsiniz.



    < Bu mesaj bu kişi tarafından değiştirildi counters -- 7 Ocak 2017; 2:38:19 >
  • Visual 2013 C++ win form açtığımda kod yazdıktan veya derletikten sonra design form ,formu görmek için tıkladığımda çok bekletiyor normal mi ? Win10 64bit işletim , 16gb ram sistemim iyi.
    Beklettikten sonra sorun olmuyor sonra buttonu tıkladım kod yazdım forma geri bakmak için döneyim gine bekletiyor ? Veya derledim programı denedim sonra tekrar forma Myform.h(design) tıkladım mı gine bekletiyor ...
  • Öncelikle ne yapmak istediğimden bahsedeyim, bir dizi oluşturup bunun içine klavyeden 0 sayısı girilene kadar sayılar girip ondan sonra bubble sort algoritması ile bunları sıralamak istiyorum.

    Kodlar:
    #include <iostream> 
    #include <conio.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>

    using namespace std;


    int main()
    {
    setlocale(LC_ALL, "Turkish");
    int boyut=1; //Boyutu burada 1 yapıyorum. Açıkçası burada ne yapmam gerek emin değilim tahminen yanlış yapıyorum. Bunu yaparken düşündüğüm şey 1 elemanlı yani indis elemanı tek elemanı olan bir dizi oluşturmak ve sonradan bunu değiştirmek. Eğer 2 yapıyor olsaydım bu sefer dizide girilmemiş eleman yaratıyor olurum diye düşündüm. 0 da 1 de 2 de yaptım, hata veriyor ve istediğim sonucu alamıyorum.

    int enk = 0;
    int sayi[boyut]; //Burada diziyi oluşturuyorum ve dizinin boyutunun, boyut adlı değişkene eşitliyorum. Şimdilik 1 yani.
    int dng=0;
    int gir;

    int k = 0;
    cout << "Dizi elemanlari: ";
    while(true){ // Yanlış yaptığım alan bu döngü içerisinde olabilir. Sonsuz döngüyü oluşturdum.


    cin >> gir; //İlk çalıştırmada sayıyı girdik.

    if(gir==0){ //Eğer sıfırsa döngüden çıkması için bir komut oluşturduk.
    break;
    }


    sayi[k] = gir; //sayının k'ıncı elemanını, girilen değere yani gir'e eşitledik. İlk girişte sıfırıncı eleman oluyor.

    k++; // burada kaçıncı eleman oldugunu belirtmek için kullandıgım değişkeni bir sonraki elemanı değiştirmek için arttırmayı hedefliyorum.
    boyut++; // 1 olan boyutu 2 yaptık. Devamında ise dizinin k'ıncı yani 1. elemanını gir e eşitliyor, boyut artıyor. fakat burada düşündüğüm hata ise örneğin bir sayı girdikten sonra boyut artıyor fakat bir sonraki gir değeri sıfıra eşit olunca artan boyut ve girilmeyen değer yüzünden boşa artmış oluyor.
    }


    cout << endl;

    for(int i = 0; i<boyut;i++){
    for(int j=i+1;j<=boyut;j++){
    if(sayi[i]>sayi[j]){
    enk = sayi[i];
    sayi[i] = sayi[j];
    sayi[j] = enk;
    }
    }
    }
    cout << "Dizi elemanlarinin kucukten buyuge siralanmis hali:
    ";

    for (int i=0; i<=boyut;i++){
    cout << sayi[i] << endl;
    }

    }


    Bazen düzgün çalışıyor ve girdiğim her elemanı almıyor, emin değilim ama girdiğim son eleman olan sıfırı dahil ediyor olabilir veya bunu default olarak gösteriyor olabilir. Bazen ise program çalışmayı durduruyor.




  • Barcow B kullanıcısına yanıt
    mod 1 almak en kolayi
    Console.WriteLine(20.45 % 1);
  • Raiverd R kullanıcısına yanıt
    atiyorum 2.7 yi "iki tam onda yedi"ye mi donusturmek istiyorsunuz?
    eger oyleyse su an uydurdugum cozumu yazayim en iyi cozum mudur bilemem:

    nokta oncesi ve sonrasini ayir.
    oncesinin kac basamak oldugunu bul, basamaklari kendi icinde ayir ve kacinci sirada olduguna ve rakamin kac olduguna gore "doksan" gibi stringlere ata.
    yani mesela:
    91 sayisi icin 9 ve 1 diye ayir,
    sagdan sola indexleri 0 ve 1 oldugu icin indexi 0 olan birler basamagi, 1 olan onlar basamagi, 2 olan yuzler vs diye gider.
    burada 9 icin "doksan" 1 icin de "bir" stringlerini atarsin ve bunlari birlestirirsin. bu ondaligin sol kismi.
    + " tam " sabit stringi
    sag kisim icin de yine kac basamak olduguna gore yuzde mi onda mi bulursun. ona gore "onda" seklinde string eklersin.
    diger sayi da yine ilk bastaki yontem gibi sayiyi okutacak yontem.

    simdi bir fonksiyon tanimla int deger alip string donduren. yani 92 sayisini alip "doksaniki" dondurecek.
    yapacagi islemler:
    bos bir sonuc stringi olustur
    sayiyi diziye donustur: [9, 2]
    diziyi ters cevir: [2, 9]
    dizinin her elemani icin:
    {
    // birler, onlar dediklerim rakamin karsiligi olan stringleri tutan koleksiyon.
    indexi kac? 0 ise birler
    1 ise onlar
    2 ise yuzler
    3 ise binler
    4 ise onbinler
    5 ise yuzbinler ...
    //ne kadar gidecegin sana bagli
    koleksiyonundan sayinin degerinin karsiligini bul ve sonuc stringine bastan ekle. (stringin su anki hali "iki" ise yeni hali "doksaniki" olacak, yani basina eklemen gerek)
    }
    sonuc stringini dondur.

    bu yukarda bahsettigim koleksiyonlar su sekilde:
    onlar=
    { [0, ""], [1, "on"], [2, "yirmi"], ......, [9, "doksan"] }
    bu sekilde birler, yuzler vs de olacak.

    bu fonksiyonu sayi okutmada kullanacaksin. diger kisim kolay zaten
    "tam" stringi sabit, "onda" veya "yuzde" stringini de noktanin sagindaki sayinin basamak sayisi belirleyecek ki o da basit bir islem string.length ile alirsin.

    umarim anlatabilmisimdir gece gece. anlamadigin yer olursa sor cevaplarim. biraz uykuluyum umarim sacmalamamisimdir




  • C# ta Ben bir makro yaptım notepadde gayet güzel ve hızlı fakat oyunda açtığımda çok yavaş normal bir harfe basıyomuşsun gibi bunu nasıl oyun için uyarlayabilirim ??



    < Bu mesaj bu kişi tarafından değiştirildi Guest-F531A68DD -- 14 Ocak 2017; 13:57:55 >
  •  
    #include <cstdio>
    #include <iostream>
    using namespace std;
    int main(){
    double a = 14049.30493
    cout << a << endl; //Sonuçta sadece virgülden sonra 3ü veriyor.
    printf("%lf",a); //Virgülden sonra 5 basamağı veriyor ama sonuna 0 ekliyor.

    Sonuçta ikisi de istediğim sonucu vermiyor.Nasıl çözebilirim bu sorunu ?
  • Merhaba Arkadaşlar. Algoritma örnekleri yapıyordum fakat bir algoritmada takıldım kaldım.
    5 basamaklı tüm Palindromik (tersten aynı okunan örn:43534) sayıların toplamını bulan bir algoritma yaptım kodunu yazdım fakat yanlış sonuç veriyor bir türlü bulamadım hatayı. C ile yazdım kodlar aşağıda şimdiden teşekkürler...


    #include <stdio.h>
    int main()
    {
    int sayi, ters = 0, top = 0, gecici;
    for (sayi = 11111; sayi <= 99999; sayi++)
    {
    gecici = sayi;
    while(gecici > 0){
    ters *= 10;
    ters += gecici%10;
    gecici = gecici / 10;
    }
    if (sayi==ters)
    {
    top += sayi;
    }
    }
    printf("Toplam %d
    ", top);
    return 0;
    }



    < Bu mesaj bu kişi tarafından değiştirildi iris07 -- 21 Ocak 2017; 19:20:19 >
  • iris07 kullanıcısına yanıt
    ters değişkenini döngünün her adımında sıfırlamalısın.
  • Keremqw kullanıcısına yanıt
    Çok teşekkür ederim. Nasıl unuttum onu ya
  • #include <iostream>
    #include <cstdlib>
    #include <ctime>

    using namespace std;
    int main() {
    int randomSayi,tahmin,yanit;
    srand(time(0));
    randomSayi = rand() % 8999+1000;
    do
    {
    cout << "Tahmininizi giriniz: ";
    cin >> tahmin;
    if (tahmin==randomSayi) {
    cout << "Tebrikler! Random sayiyi bildiniz. \n";
    cout << "Random Sayi= " << randomSayi << "\n";
    return 0; }
    else {
    cout << "Maalesef! Random sayiyi bilemediniz. \n";
    if (tahmin>randomSayi)
    cout << "Tahmininizi azaltmalisiniz. \n";
    else cout << "Tahmininizi arttirmalisiniz. \n"; }
    }
    while (tahmin!=randomSayi);
    {
    cin.ignore();
    cin.get();
    return 0;
    cout << "Devam etmek icin 1 - Programi kapatmak icin 0 giriniz: ";
    cin >> yanit;
    if (yanit==1) cout << "RandomSayi = " << randomSayi
    << "\n";
    if (yanit==0) cout << "Program kapaniyor... \n";




    }
    }

    Bu kod çalışıyor ama devam etmek için 1 gelmiyor yarcımcı olabilirmisiniz




  • Sıfırdan facebook tarzı siteler yaratabilmek için hangi dilleri, programları bilmek gerekir ?
  • öncelikle iyi akşamlar ben bi ödevimde yarıya kadargeldim fakat programlama bilmediğim için fazla ilerleyemedim


    #include <stdio.h>
    int main ()
    {
    int Sayi, i, i2, M;
    printf (" Bir sayi giriniz : ");
    scanf ("%d",&Sayi);
    for(i=2;i<=Sayi;i++){
    M=1;
    for(i2=2;i2<i;i2++){
    if(i%i2==0) {
    M=0;
    break;
    }}
    if(M==1) printf("%d\n",i);
    }
    }


    hocamın benden istediği girdiğimiz bir sayıyı 3 tane asal sayı toplamı şeklinde yazdıracak ben girdiğim sayıya kadar asal sayıları buldurdum fakat devamını getremedim teşekkür ederim şimdiden








  • Ben bunların devamını getiremedim berde yanlış yapıyorum hoca girdiğim sayıyı 3 asal sayı toplamı şeklinde yazın dedi for içinde for mu olacak

    < Bu ileti mobil sürüm kullanılarak atıldı >




  • student1515 S kullanıcısına yanıt
    #include <stdio.h>
    int checkPrime(int n);
    int main()
    {
    int n, i, flag = 0;

    printf("Enter a positive integer: ");
    scanf("%d", &n);

    for(i = 2; i< = n/2; ++i)
    {
    // condition for i to be a prime number
    if (checkPrime(i) == 1)
    {
    // condition for n-i to be a prime number
    if (checkPrime(n-i) == 1)
    {
    // n = primeNumber1 + primeNumber2
    printf("%d = %d + %d\n", n, i, n - i);
    flag = 1;
    }

    }
    }

    if (flag == 0)
    printf("%d cannot be expressed as the sum of two prime numbers.", n);

    return 0;
    }

    // Function to check prime number
    int checkPrime(int n)
    {
    int i, isPrime = 1;

    for(i = 2; i <= n/2; ++i)
    {
    if(n % i == 0)
    {
    isPrime = 0;
    break;
    }
    }

    return isPrime;
    }




    Bu ikili sayılar için.3 lü nasıl olur bilmiyorum.Asal sayıları arrayde yazıp random sayı atılmalı number 1 için.Sonra toplamdan bu number1 çıkarılmalı.Kalan sayılar için yukarıdaki codela sağlamalı başka yol gelmedi aklıma.GoldBach sanısı diye geçer bu.




  • void veriler() 
    {
    con.Open();
    da = new OleDbDataAdapter("select tb1.id,p_sicil_no,adi,soyadi,anne_adi,baba_adi,giris_tarihi,adresi from tb1 left outer join tb2 on tb1.id = tb2.id left outer join tb3 on tb2.id = tb3.id left outer join tb4 on tb3.id = tb4.id", con);
    cb = new OleDbCommandBuilder(da);
    da.Fill(dt); /* herşey doğru sıkıntı yok ama select cümlesinde hata veriyor*/
    bs.DataSource = dt;
    dataGridView1.DataSource = bs;
    textBox1.DataBindings.Add("text", bs, "p_sicil_no");
    textBox2.DataBindings.Add("text", bs, "adi");
    textBox3.DataBindings.Add("text", bs, "soyadi");
    textBox4.DataBindings.Add("text", bs, "anne_adi");
    textBox5.DataBindings.Add("text", bs, "baba_adi");
    dateTimePicker1.DataBindings.Add("text", bs, "giris_tarihi");
    textBox6.DataBindings.Add("text", bs, "adresi");
    con.Close();
    }



    Aldığım hata bu bir türlü çözümü bulamıyorum select cümlesindeki tb3 ve tb4 ü kaldırdığımda tb1 ve tb2 tablolarındaki veriler hatasız bi şekilde görüntüleniyor.



    Veritabanıda bu şekilde, yardımcı olursanız çok sevinirim. Bu arada aynı select cümlesini sql serverda aynı tabloları oluşturup denedim gayet sorunsuz verileri görüntüleyebildim.




  • Arkadaşlar merhaba,

    Veri Yapıları pointer ödevim var.(C++)

    Resimde 1. metotta pointerlar ile yeni bir nesne oluşturup güzelce diziyi yazdırıyorum.

    Resimde 2.metotta yapmak istediğim 1. metotta yazdırdığım dizideki adresleri alıp indislerini değiştirip ekrana basmak. Ancak t2 pointerını 2. metotta kullanamıyorum.2.MEtotta swap işlemi yapacağımı biliyorum ama nasıl yapılacağını bilmiyorum

    İsteyen arkadaşlara ödevi tam anlamıyla anlamaları için ödev dosyasını atabilirim.




  • 
Sayfa: önceki 205206207208209
Sayfaya Git
Git
sonraki
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.