第8週目プロジェクト1配列データメンバー(1)
2041 ワード
/*Copyright (c)2016,
02.02.*All rights reserved.
03.03.* :main.cpp
04.04.* :
05.05.* :2016 4 17
06.06.* :v1.0
07.07.*
08.08.* :
09.09. :
10.10.* :
11.*/
#include <iostream>
using namespace std;
class Salary
{
public:
void set_salarys();
void add_salarys(int x);
void sort_salarys();
void show_salarys();
private:
double salary[50];
int number;
};
void Salary:: set_salarys()
{
int i,number=0,a;
for(i=0;i<50;i++)
{
cin>>salary[i];
number=number+1;
if(salary[i]==-1)
{
a=i;
break;
}
}
}
void Salary::add_salarys(int x)
{
int i,a;
for(i=0;i<50;i++)
{
if(salary[i]==-1)
{
a=i;
}
}
for(i=0;i<a;i++)
{
if(salary[i]==-1)
{
break;
}
salary[i]=salary[i]+x;
}
}
void Salary::sort_salarys()
{
int i,j,t,a;
for(i=0;i<50;i++)
{
if(salary[i]==-1)
{
a=i;
}
}
for(i=0;i<a-1;i++)
{
for(j=0;j<a-i-1;j++)
{
if(salary[j]>salary[j+1])
{
t=salary[j];
salary[j]=salary[j+1];
salary[j+1]=t;
}
}
}
}
void Salary::show_salarys()
{
int i,a;
for(i=0;i<50;i++)
{
if(salary[i]==-1)
{
a=i;
}
}
for(i=0;i<a;i++)
{
cout<<salary[i]<<endl;
}
}
int main()
{
Salary s;
int x;
cout<<" :"<<endl;
cin>>x;
cout<<" :( -1 )"<<endl;
s.set_salarys();
s.add_salarys(x);
s.sort_salarys();
cout<<" :"<<endl;
s.show_salarys();
return 0;
}
実行結果:
学習の心得:
クラスでの配列の運用
知識ポイントのまとめ:
配列の簡単な運用