1. 문자가 숫자인지 알려주는 isDigit 함수를 구현하세요. 문자 ch를 입력 받고, ch가 숫자인지 출력하세요. 맞다면 YES, 아니면 NO를 출력합니다.
출력) 문자 : P
결과 : NO
문자 : 2
결과 : YES
#include <iostream>
using namespace std;
class Ap
{
private:
char a;
public:
void std();
};
void Ap::std()
{
cout<< "Enter a character :";
cin>> a;
if((65<=a&&a<= 90) || (97<=a&&a<=122)) //중간에 && 조건
식해서 답이 안나왔다
{
cout << "결과 : NO";
}
else if((48<a)&&(a<57))
{
cout << "결과 : YES";
}
}
int main()
{
Ap pt1;
pt1.std();
return 0;
}
2. 정수 N을 입력하면 2의 N승을 출력하는 프로그램을 작성하세요. 단, 비트 연산을 이용합니다.
그리고 -1을 입력할 경우 프로그램은 종료됩니다.
출력) 입력 : 6
출력 : 2^6= 64
입력 : 4
출력 : 2^4 = 16
입력 : -1
프로그램 종료
#include <iostream>
using namespace std;
class Ap
{
private:
unsigned int a;
int b;
public:
void std(); //맴버함수.
Ap(); //생성자 선언.
};
Ap::Ap() //생성자 초기화
{
}
void Ap::std()
{
while(1)
{
cout<<"입력: ";
cin>>b;
if( b == -1) //탈출값.
{
break;
}
a = 1 << b; //2진수 승수를 올려주는 의미.
cout<<"출력: 2^"<<b<<"="<< a<<"\n";
}
}
int main()
{
Ap pt1;
pt1.std();
return 0;
}
그냥 int로 설정한 경우.
값을 넘어가면 한 바퀴 넘어서 1이 된다.
unsigned int로 설정한 경우
/*3. 다음과 같은 형태로 문자열이 출력되는 프로그램을 작성하시오.
1)
A
A B
A B C
A B C D
A B C D E
2) a
b a
c b a
d c b a
e d c b a*/
#include <iostream>
using namespace std;
class Pw
{
private:
int b;
int c;
char *a; //배열
public:
void std();
Pw();
};
Pw::Pw()
{
a = "ABCDE";
}
void Pw::std()
{
for(b=0; b<=5; b++)
{
for(c=0; c<b; c++)
{
cout<<a[c]<<"\t";
}
cout <<"\n";
}
}
int main()
{
Pw pt1;
pt1.std();
return 0;
}
'About 프로그래밍!!! > C++' 카테고리의 다른 글
[C++] 퀴즈1 (0) | 2010.06.30 |
---|---|
[C++] 포함. (0) | 2010.06.29 |
[C++]This 포인터 (0) | 2010.06.25 |
[C++]클래스에 넣을 수 있는 다른 것들. (0) | 2010.06.25 |
[C++]과제 8. (0) | 2010.06.24 |