Bir iş yerindeki çalışanların adlarını, soy adlarını ve maaşlarını klavyeden alan ve işçilerin bilgilerini nesne dizisine kaydeden programı oluşturunuz. Kullanıcı çalışan girişini bitirmek istediğinde -1 girsin ve ekrana çalışanların adları ve soyadları, maaşları en çok olandan en az olana doğru yazılsın. Böyle bir soru sormuşlar ama yeni başladığım için yapamadım, yardımcı olur musunuz?
#Include<iOStream>
#Include<string>
Using namespace std;
Hocanız size mi çok kötü anlattı siz mi anlamadınız orasını anlamadım. Sınıf kullanıyorsunuz ama kullanmasanız daha iyi resmen. -1'in neyin değeri olacağı bile belli değil.
Kendiniz öğrendiğiniz kadarı ile sınıfa entegre edersiniz.
Bu arada personel bilgi değil de personel array, personel dizisi gibi isimler koymanız daha mantıklı olurdu. Pek alışılagelmedik değişkenleri kısaltmayın. İleride başınız ağrır.
Kod:
#include <iostream>
#include <string>
#include <locale>
using namespace std;
class Personel {
public:
void PersonelBilgiGir();
void PersonelBilgiGoster() {
cout << "Personel Adı: " << ad << endl;
cout << "Personel Soyadı: " << soyAd << endl;
cout << "Personel Maaş: " << maas << endl;
}
string ad;
string soyAd;
int maas;
};
void Personel::PersonelBilgiGir() {
string a, s;
int m;
cout << "Personelin Adı: ";
cin >> a;
cout << "Personelin Soyadı: ";
cin >> s;
cout << "Personelin Maaşı : ";
cin >> m;
cout << "------------------------" << endl;
ad = a;
soyAd = s;
maas = m;
}
int main() {
Personel prsnlbilgi[100];
setlocale(LC_ALL, "Turkish");
int idx = 0;
int maasInput = 0;
string adInput;
string soyAdInput;
while (true) {
cout << "Lütfen maaş giriniz: ";
cin >> maasInput;
if (maasInput == -1)
break;
cout << "Lütfen ad giriniz: ";
cin >> adInput;
cout << "Lütfen soyad giriniz: ";
cin >> soyAdInput;
prsnlbilgi[idx].maas = maasInput;
prsnlbilgi[idx].ad = adInput;
prsnlbilgi[idx++].soyAd = soyAdInput;
}
cout << endl << endl;
for (int i = 0; i < idx - 1; ++i) {
for (int j = 0; j < idx - i - 1; ++j) {
if (prsnlbilgi[j].maas < prsnlbilgi[j + 1].maas) {
swap(prsnlbilgi[j], prsnlbilgi[j + 1]);
}
}
}
for (int i = 0; i < idx; ++i) {
cout << i + 1 << ". Personel adı: " << prsnlbilgi[i].ad << endl;
cout << i + 1 << ". Personel soyadı: " << prsnlbilgi[i].soyAd << endl;
cout << i + 1 << ". Personel maaşı: " << prsnlbilgi[i].maas << endl;
}
return 0;
}
Bir iş yerindeki çalışanların adlarını, soyadlarını ve maaşlarını klavyeden alan ve işçilerin bilgilerini nesne dizisine kaydeden programı oluşturunuz. Kullanıcı çalışan girişini bitirmek istediğinde -1 girsin ve ekrana çalışanların adları ve soyadları, maaşları, en çok olandan en az olana doğru yazılsın.
Hocanız size mi çok kötü anlattı siz mi anlamadınız orasını anlamadım. Sınıf kullanıyorsunuz ama kullanmasanız daha iyi resmen. -1'in neyin değeri olacağı bile belli değil.
Kendiniz öğrendiğiniz kadarı ile sınıfa entegre edersiniz.
Bu arada personel bilgi değil de personel array, personel dizisi gibi isimler koymanız daha mantıklı olurdu. Pek alışılagelmedik değişkenleri kısaltmayın. İleride başınız ağrır.
Kod:
#include <iostream>
#include <string>
#include <locale>
using namespace std;
class Personel {
public:
void PersonelBilgiGir();
void PersonelBilgiGoster() {
cout << "Personel Adı: " << ad << endl;
cout << "Personel Soyadı: " << soyAd << endl;
cout << "Personel Maaş: " << maas << endl;
}
string ad;
string soyAd;
int maas;
};
void Personel::PersonelBilgiGir() {
string a, s;
int m;
cout << "Personelin Adı: ";
cin >> a;
cout << "Personelin Soyadı: ";
cin >> s;
cout << "Personelin Maaşı : ";
cin >> m;
cout << "------------------------" << endl;
ad = a;
soyAd = s;
maas = m;
}
int main() {
Personel prsnlbilgi[100];
setlocale(LC_ALL, "Turkish");
int idx = 0;
int maasInput = 0;
string adInput;
string soyAdInput;
while (true) {
cout << "Lütfen maaş giriniz: ";
cin >> maasInput;
if (maasInput == -1)
break;
cout << "Lütfen ad giriniz: ";
cin >> adInput;
cout << "Lütfen soyad giriniz: ";
cin >> soyAdInput;
prsnlbilgi[idx].maas = maasInput;
prsnlbilgi[idx].ad = adInput;
prsnlbilgi[idx++].soyAd = soyAdInput;
}
cout << endl << endl;
for (int i = 0; i < idx - 1; ++i) {
for (int j = 0; j < idx - i - 1; ++j) {
if (prsnlbilgi[j].maas < prsnlbilgi[j + 1].maas) {
swap(prsnlbilgi[j], prsnlbilgi[j + 1]);
}
}
}
for (int i = 0; i < idx; ++i) {
cout << i + 1 << ". Personel adı: " << prsnlbilgi[i].ad << endl;
cout << i + 1 << ". Personel soyadı: " << prsnlbilgi[i].soyAd << endl;
cout << i + 1 << ". Personel maaşı: " << prsnlbilgi[i].maas << endl;
}
return 0;
}
Hocanız size mi çok kötü anlattı siz mi anlamadınız orasını anlamadım. Sınıf kullanıyorsunuz ama kullanmasanız daha iyi resmen. -1'in neyin değeri olacağı bile belli değil.
Kendiniz öğrendiğiniz kadarı ile sınıfa entegre edersiniz.
Bu arada personel bilgi değil de personel array, personel dizisi gibi isimler koymanız daha mantıklı olurdu. Pek alışılagelmedik değişkenleri kısaltmayın. İleride başınız ağrır.
Kod:
#include <iostream>
#include <string>
#include <locale>
using namespace std;
class Personel {
public:
void PersonelBilgiGir();
void PersonelBilgiGoster() {
cout << "Personel Adı: " << ad << endl;
cout << "Personel Soyadı: " << soyAd << endl;
cout << "Personel Maaş: " << maas << endl;
}
string ad;
string soyAd;
int maas;
};
void Personel::PersonelBilgiGir() {
string a, s;
int m;
cout << "Personelin Adı: ";
cin >> a;
cout << "Personelin Soyadı: ";
cin >> s;
cout << "Personelin Maaşı : ";
cin >> m;
cout << "------------------------" << endl;
ad = a;
soyAd = s;
maas = m;
}
int main() {
Personel prsnlbilgi[100];
setlocale(LC_ALL, "Turkish");
int idx = 0;
int maasInput = 0;
string adInput;
string soyAdInput;
while (true) {
cout << "Lütfen maaş giriniz: ";
cin >> maasInput;
if (maasInput == -1)
break;
cout << "Lütfen ad giriniz: ";
cin >> adInput;
cout << "Lütfen soyad giriniz: ";
cin >> soyAdInput;
prsnlbilgi[idx].maas = maasInput;
prsnlbilgi[idx].ad = adInput;
prsnlbilgi[idx++].soyAd = soyAdInput;
}
cout << endl << endl;
for (int i = 0; i < idx - 1; ++i) {
for (int j = 0; j < idx - i - 1; ++j) {
if (prsnlbilgi[j].maas < prsnlbilgi[j + 1].maas) {
swap(prsnlbilgi[j], prsnlbilgi[j + 1]);
}
}
}
for (int i = 0; i < idx; ++i) {
cout << i + 1 << ". Personel adı: " << prsnlbilgi[i].ad << endl;
cout << i + 1 << ". Personel soyadı: " << prsnlbilgi[i].soyAd << endl;
cout << i + 1 << ". Personel maaşı: " << prsnlbilgi[i].maas << endl;
}
return 0;
}