제가 좀 바꾸어 봤습니다..
님이 짜신게 에러가 좀 많이 나네요..ㅅㅅ;
그리고 루틴에서...짝수일경우..
isum = isum + (2*n - 1); 이 루틴에서..
n이 1부터 50까지라면...정확히 n이 50개 까지의 짝수값이 더해지죠..?
1부터 50개 사이의 짝수의 합이라면..이렇게는 안되지요..?
이사이의 값중에서 짝수값만 뽑아 내서 더하실려면..%연산자를 이용하시는게 좋을것 같네요
#include <iostream.h>
#include <conio.h>
class base {
private:
//멤버 변수..
int isum;
public:
//이거 생성자로 만드신거 맞나요..? 님이 짜신 코드가 좀 이상해서..ㅡ,.ㅡ;;
//아무래도 생성자 같아서 수정했습니다.
base(){
isum = 0;
}
//멤버 함수..짝수의 합..
int oddsum()
{
for(int n = 1; n <=50; n++){
if(!(n%2)) //짝수처리..
isum = isum + n;
}
return isum;
}
};
class derived : public base {
private:
int isum;
public:
derived(){
isum = 0;
}
//홀수합...
int oddsum2()
{
for(int n = 1; n <=50; n++)
{
if(n%2) //홀수처리..
isum = isum + n;
}
return isum;
}
};
main()
{
derived o = derived();
cout<<"짝수합 ="<<o.oddsum()<<"and"<<"홀수합 = "<<o.oddsum2()<<endl;
getch();
return 0;
}
신윤정 님이 쓰신 글 :
: #include <iostream.h>
:
: class base {
: public:
: int oddsum()
: {
: base(int isum = 0;
: for(int n = 1; n <=50; n++)
: {
: isum = isum + (2*n - 1);
: }
: return isum;
: }
: };
:
: class derived : public base {
: public:
: derived(int n) : base(n)
: int oddsum2()
: {
: base(int isum = 0;
: for(int n = 1; n <=50; n++)
: {
: isum = isum + (2*n);
: }
: return isum;
: }
: };
:
: main()
: {
: derived o;
:
: o.oddsum();
:
: return 0;
: }
:
:
: 이렇게 1-100까지의 홀수의 합과 1-100까지의 짝수의 합을 구하는 프로그램을 작성해 봤는데영..
: 에러가 3개 나네용..
: 근데...에러 고치기 힘들어서여..
: 그리고...레조님과..태즈님...이렇게 신경써주셔서 정말정말~~고마워용~~^^..~
: 제가 짠것좀 한번 봐주시고...고쳐주시면...감사 하겠습니다..
: ~
|