Fark Olusturma Anket Uygulaması

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üye
Katılım
1 Ocak 2021
Mesajlar
22
Tepki puanı
5
Yaş
32
5 HİZMET YILI
Bu uygulamada kullanıcıların 5 sosyal konuda oy vermelerini sağlamak üzere bir program yazınız. Oylamada 1 en düşük 10 ise en yüksek oy değeridir.
Konuları saklamak üzere 5 elemanlı 1 string dizisi oluşturun.
Anket Sonuçlarını özetlemek için 5 satır ve 5 sutunlu 2 boyutlu bir dizi oluşturun.
1- Beş konunun soldan aşağıya doğru olduğu ve 10 derecenin üstte yer aldığı her bir sutunda her bir konu için aldığı oyun rapor edildiği bir tablo şeklinde yazdırın.
2- her bir satırn sağında konu için ortalama rakamı gösteriniz.
3- En yüksek ve en düşük oy yazdırın.

ANKT.h

C++:
#ifndef _ANKT_H_
#define _ANKT_H_
#include <string>
#include <array>
class ANKT {
    
public:
    static const size_t Satir = 5;
    static const size_t Sutun = 5;
    ANKT(const std::array <std::string, Satir>&, std::array < std::array <int, Satir>, Sutun>&,const std::string);
    void listele()const;
    int getHighest()const;
    int getLowest()const;
    double getAverage(std::array < int,Satir >)const;
    void ShowInfos()const;
    void DisplayMessage()const;
    ~ANKT();

private:
    std::array <std::string, Satir> Info;
    std::array < std::array < int, Satir>, Sutun> Vote;
    std::string Welcome;


};








#endif

ANKT.CPP

C++:
#include "ANKT.h"
#include <iostream>
#include <iomanip>

ANKT::ANKT(const std::array <std::string,Satir> &Inf,std::array < std::array < int,Satir>,Sutun> &Vot,const std::string well) : Info(Inf),Vote(Vot),Welcome(well){}

void ANKT::listele()const {
    for (const std::string In : Info)
        std::cout << In << std::endl;
    for (size_t table = 0; table < Vote.size(); ++table)
        std::cout <<std::setw(5) <<"Vote " << table + 1 << std::setw(5);
    std::cout <<std::setw(5) <<"Average" << std::endl;
    for (size_t vo = 0; vo < Vote.size(); ++vo) {

        std::cout << "Subject " << std::setw(2) << vo + 1;

        for (size_t Vot = 0; Vot < Vote[vo].size(); ++Vot)
            std::cout << std::setw(5) << Vote[vo][Vot];

        double ort = getAverage(Vote[vo]);
        std::cout << std::setw(5) << std::setprecision(2) << std::fixed << ort << std::endl;


    }


}

double ANKT::getAverage(const std::array <int, Satir> Ort)const {

    int total = 0;

    for (size_t Or : Ort)
        total += Or;

    return static_cast <double> (total) / Ort.size();
}

int ANKT::getHighest()const {
    int HighestVote = 0;

    for(auto const &sa:Vote)
        for (auto const& su : sa) {
            if (HighestVote < su)
                HighestVote = su;
        }
            
    return HighestVote;
}

int ANKT::getLowest()const {

    int LowestVote = 100;

    for(auto const &sat : Vote)
        for (auto const& sut : sat) {
            if (LowestVote > sut)
                LowestVote = sut;
        }
    return LowestVote;
}

void ANKT::DisplayMessage()const {

    std::cerr << "Welcome to " << std::setw(2) << Welcome << std::endl;

}

void ANKT::ShowInfos()const {
    listele();
    std::cout << "\n\nHighest Vote =" << getHighest() << std::endl;
    std::cout << "Lowest Vote =" << getLowest() << std::endl;


}

ANKT::~ANKT() {

    Welcome = "";
    Info = {};
    Vote = {};

}

MAİN.CPP

C++:
#include "ANKT.h"
#include <iostream>
#include <iomanip>
int main()
{
    const size_t ArraySize = 5;
    const std::string ankt = "Turkey Current Situation Survey";
    const std::array <std::string, ArraySize> Konu = {
        "Turkiyenin Ekonomik Durumundan Memnun Musunuz ?",
        "Turkiyenin İc İslerinden Memnun Musunuz ?",
        "Turkiyenin Dıs Politikalarindan memnun musunuz?",
        "Turkiyenin Covid-19 ile Mucadelesinden Memnun musunuz ?",
        "Hukumettenn Memnun Musunuz?"
    };

    std::array < std::array < int, ArraySize >, ArraySize> Vut = {};

    for (std::string k : Konu) {
        std::cout << k << std::endl;
        std::cout << "1 ile 10 arasinda derecelendiriniz (1 - berbat -- 10 - Çok iyi)" << std::endl;
        }
    std::cout << "--------------------------------------------------------" << std::endl;
    for (auto& satir : Vut)
        for (auto& sutun : satir)
            std::cin >> sutun;



    ANKT Vatandas = { Konu,Vut,ankt };
    Vatandas.DisplayMessage();
    Vatandas.ShowInfos();
    Vatandas.~ANKT();
    system("PAUSE");
    return 0;
}
 
“Asgari ücret gibiyim kimse benimle geçinemiyor”
Süper Üye
Katılım
2 Eyl 2020
Mesajlar
848
Çözümler
20
Tepki puanı
92
Ödüller
6
Yaş
26
5 HİZMET YILI
1 kral
 
En kötü savaş bildiğin ve hissettiğin arasındadır
Süper Üye
Katılım
1 Şub 2018
Mesajlar
674
Çözümler
11
Tepki puanı
71
Ödüller
9
Yaş
26
8 HİZMET YILI
Gayet başarılı kral tabikide 1
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst