Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

C++ hakkında soru yardımı

Bilgisayar ve mobil cihazlar , internet alemi ve her türlü teknolojik aletler hakkında konular

Moderatör: Moderatörler

Kullanıcı avatarı

Konu Sahibi
OPC Line
Mesajlar: 1633
Kayıt: Pzt Tem 22, 2019 3:13 am
Server Ip/DNS: 213.238.173.xx
Clan İsmi: *YouKnowMyName*

C++ hakkında soru yardımı

Mesaj gönderen OPC Line »

Selamunaleyküm attığım soruyu C++ bilenler cevaplayabilir misiniz rica etsem
40C6FF17-EE35-464F-97AB-79FD44CF032A.jpeg
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

habip_dayan
Mesajlar: 38
Kayıt: Cmt Tem 17, 2021 3:06 pm
Konum: Türkiye

C++ hakkında soru yardımı

Mesaj gönderen habip_dayan »

OPC Line yazdı: Sal Oca 19, 2021 1:06 pm Selamunaleyküm attığım soruyu C++ bilenler cevaplayabilir misiniz rica etsem 40C6FF17-EE35-464F-97AB-79FD44CF032A.jpeg
Herade şimdi sen kendinde cevaplarsın
Mezun olmuşsundur
:) :) :)

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Ömer TELLİ
Yönetici
Mesajlar: 5428
Kayıt: Pzr Eyl 06, 2015 6:12 pm
Server Ip/DNS: dm.csduragi.com
Clan İsmi: csd

C++ hakkında soru yardımı

Mesaj gönderen Ömer TELLİ »

Düzenleme : konu tarihine bakmamışım, niye eski konuyu uplarsınız ki :)
random 2 tane parametre alıyor mu ki ? Ödevin c++'da olduğuna emin misiniz.
Açıklamaları ve akış diyagramını kendiniz halledersiniz.

Kod: Tümünü seç

#include <iostream>


using namespace std;

bool asalSayimi(int num);

int main()
{
    int elemansayisi=0;
    std::cout<<"Kaç adet eleman oluşturulsun ?"<<std::endl;
    std::cin>>elemansayisi;

    while( std::cin.fail() ){
        std::cout<<"Lütfen geçerli bir eleman sayisi girin"<<std::endl;
        std::cin.clear();
        std::cin.ignore(256,'\n');
        std::cin >> elemansayisi;
        
    }
    
    //std::cout<<"girilen eleman sayisi = "<<elemansayisi<<std::endl;
    
    int dizi[elemansayisi];
    srand ( time(NULL) );
    for(int i=0;i<elemansayisi;i++)
    {
        int randomRakam = (rand() % 9) + 1;
        
        //eğer önce diziyi oluşturup, sonra dizinin kontrolünün yapılmasını isteniliyorsa
        //ikinci bir döngü ile kontrolü sağlamalısın. yoksa ameleliğe gerek yok aynı döngü içinde değiştirebilirsin
        
        /*
        if(randomRakam == 3){
            randomRakam = 12;
            cout<<"oluşturulan random rakam 3 iken 12 olarak değiştirildi "<<randomRakam<<std::endl;
        }else{
            std::cout<<"olusturulan rakam "<<randomRakam<<std::endl;
        }
        */
        
        //std:cout<<"olusturulan rakam "<<randomRakam<<std::endl;
        
        dizi[i] = randomRakam;
        
    }
    
    //kontrol döngüsü. 3'ün 12 ile değişimi ayrı döngüde isteniyorsa bu şekilde olmalı
    for(int i=0;i<elemansayisi;i++)
    {
        //std::cout<<"kontrol edilen eleman değeri "<<dizi[i]<<std::endl;
        if(dizi[i] == 3){
            dizi[i] = 12;
            //std::cout<<"değeri 3 olan dizi elemanı 12 olarak degistirildi "<<std::endl;
        }
    }
    
    int tek=0,cift=0,asal=0;
    for(int i=0;i<elemansayisi;i++)
    {
        if(asalSayimi(dizi[i])){
            //std::cout<<dizi[i]<<" asal sayidir"<<std::endl;
            asal++;
        }
        if ( dizi[i] % 2 == 1)
        {
           //std::cout<<dizi[i]<<" tek  sayidir"<<std::endl; 
           tek++;
        }
        if ( dizi[i] % 2 == 0)
        {
           //std::cout<<dizi[i]<<" cift  sayidir"<<std::endl; 
           cift++;
        }
    }
    std::cout<<"Toplam Tek Sayi : "<<tek<<" # Toplam Cift Sayi : "<<cift<<" # Toplam Asal Sayi : "<<asal<<std::endl;
        
    return 0;
}

bool asalSayimi(int sayi){
    bool r=true;
    
    if(sayi==1)
        return false;
    
    for(int i = 2; i <= sayi / 2; i++) {
       if(sayi % i == 0) {
          r = false;
          break;
       }
    }
    return r;
}


Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
OPC Line
Mesajlar: 1633
Kayıt: Pzt Tem 22, 2019 3:13 am
Server Ip/DNS: 213.238.173.xx
Clan İsmi: *YouKnowMyName*

C++ hakkında soru yardımı

Mesaj gönderen OPC Line »

Ömer TELLİ yazdı: Prş Eyl 09, 2021 2:07 am Düzenleme : konu tarihine bakmamışım, niye eski konuyu uplarsınız ki :)
random 2 tane parametre alıyor mu ki ? Ödevin c++'da olduğuna emin misiniz.
Açıklamaları ve akış diyagramını kendiniz halledersiniz.

Kod: Tümünü seç

#include <iostream>


using namespace std;

bool asalSayimi(int num);

int main()
{
    int elemansayisi=0;
    std::cout<<"Kaç adet eleman oluşturulsun ?"<<std::endl;
    std::cin>>elemansayisi;

    while( std::cin.fail() ){
        std::cout<<"Lütfen geçerli bir eleman sayisi girin"<<std::endl;
        std::cin.clear();
        std::cin.ignore(256,'\n');
        std::cin >> elemansayisi;
        
    }
    
    //std::cout<<"girilen eleman sayisi = "<<elemansayisi<<std::endl;
    
    int dizi[elemansayisi];
    srand ( time(NULL) );
    for(int i=0;i<elemansayisi;i++)
    {
        int randomRakam = (rand() % 9) + 1;
        
        //eğer önce diziyi oluşturup, sonra dizinin kontrolünün yapılmasını isteniliyorsa
        //ikinci bir döngü ile kontrolü sağlamalısın. yoksa ameleliğe gerek yok aynı döngü içinde değiştirebilirsin
        
        /*
        if(randomRakam == 3){
            randomRakam = 12;
            cout<<"oluşturulan random rakam 3 iken 12 olarak değiştirildi "<<randomRakam<<std::endl;
        }else{
            std::cout<<"olusturulan rakam "<<randomRakam<<std::endl;
        }
        */
        
        //std:cout<<"olusturulan rakam "<<randomRakam<<std::endl;
        
        dizi[i] = randomRakam;
        
    }
    
    //kontrol döngüsü. 3'ün 12 ile değişimi ayrı döngüde isteniyorsa bu şekilde olmalı
    for(int i=0;i<elemansayisi;i++)
    {
        //std::cout<<"kontrol edilen eleman değeri "<<dizi[i]<<std::endl;
        if(dizi[i] == 3){
            dizi[i] = 12;
            //std::cout<<"değeri 3 olan dizi elemanı 12 olarak degistirildi "<<std::endl;
        }
    }
    
    int tek=0,cift=0,asal=0;
    for(int i=0;i<elemansayisi;i++)
    {
        if(asalSayimi(dizi[i])){
            //std::cout<<dizi[i]<<" asal sayidir"<<std::endl;
            asal++;
        }
        if ( dizi[i] % 2 == 1)
        {
           //std::cout<<dizi[i]<<" tek  sayidir"<<std::endl; 
           tek++;
        }
        if ( dizi[i] % 2 == 0)
        {
           //std::cout<<dizi[i]<<" cift  sayidir"<<std::endl; 
           cift++;
        }
    }
    std::cout<<"Toplam Tek Sayi : "<<tek<<" # Toplam Cift Sayi : "<<cift<<" # Toplam Asal Sayi : "<<asal<<std::endl;
        
    return 0;
}

bool asalSayimi(int sayi){
    bool r=true;
    
    if(sayi==1)
        return false;
    
    for(int i = 2; i <= sayi / 2; i++) {
       if(sayi % i == 0) {
          r = false;
          break;
       }
    }
    return r;
}

Ömer Abi ilgin için çok teşekkür ederim. Bu ödev çok yakın bir arkadaşımın ödeviydi. Rica edince buradan yardım istedim bende. Eline sağlık

Link:
Linklerini gizle
Linki Kopyala
Cevapla