예제
일단 입출력을 해보자~ 라는 생각에 간단한 예제로 놀아보자.
#include <iostream>
#include <iomanip> //setw()함수를 사용하기 위해.
using namespace std; //네임스페이스 std
//네임스페이스를 빼면 std::cout형식으로 써야 한다 너무 귀찮다.
void main(){
int conver=26;
cout<<setw(1)<<dec<<conver; //10진수
//sew()출력 자리수 지정
cout<<setw(10)<<oct<<conver; //8진수
cout<<setw(20)<<hex<<conver<<endl;
cout<<setw(12)<<setiosflags(ios::showbase)<<oct<<conver;
cout<<setw(20)<<setiosflags(ios::showbase)<<hex<<conver<<endl;
//setiosflags(ios::showbase) 서식 플래그를 지정하는 함수.
}
하지만 이러면~! 너무 재미가 없다.
입력 받은 수를 각 진수로 바꾸게 바꾸자.
그렇게 어렵지 않다. 원래 프로그래밍 공부는 이런식으로 해야한다고 나는 생각한다 주어진 예제만 쳐봤자 손가락 운동 밖에 더 되겠는가?
일단 본인은 입력과 출력을 함수로 나누었다.
#include <iostream>
#include <iomanip> //setw()함수를 사용하기 위해.
int input(int);
void output(int);
using namespace std; //네임스페이스 std
//네임스페이스를 빼면 std::cout형식으로 써야 한다 너무 귀찮다.
int input(int conver){
cout<<"___________________________________________"<<endl;
cout<<"변환하고자 하는 수를 입력해주세요."<<endl;
cout<<"입력 : ";
cin>>conver; //입력
cout<<"___________________________________________"<<endl<<endl;
return conver;
}
void output(int conver){
cout<<setw(1)<<dec<<conver;
//10진수//sew()출력 자리수 지정
cout<<setw(10)<<oct<<conver; //8진수
cout<<setw(20)<<hex<<conver<<endl;
cout<<setw(12)<<setiosflags(ios::showbase)<<oct<<conver;
cout<<setw(20)<<setiosflags(ios::showbase)<<hex<<conver<<endl;
cout<<"_____________________________________________"<<endl;
//setiosflags(ios::showbase) 서식 플래그를 지정하는 함수.
}
void main(){
int conver=0;
conver=input(conver);
output(conver);
}
자 입력을 받으면 이제 변환이 되는데 이런생각 안해봤는가... 여러번 바꾸고싶을 수 있다. 그럼 입력을 여러번 받아야한다.
그럼 브레이크를 걸 숫자를 생각해야하는데. 개인적으로 0이라고 생각한다.
0을 진수 변환할리가 없지 않은가.
그래서 0을 입력받으면 프로그램이 끝나게 하자.
void main(){
int conver=1; //0이 아닌수로 초기화 해준다.
while(conver!=0){
conver=input(conver);
if(conver!=0){
output(conver);
}
}
cout<<"프로그램을 종료 합니다."<<endl<<endl;
return;
}
C++은 나도 배우는 입장이다.
그렇기 때문에 틀린 부분이 있다고 하더라도 이해 부탁한다.