1. 문제

 

6. 문자열을 두 개 입력받고 두 개의 문자열이 같은지 검사하는 프로그램을 작성하라. 만일 같으면 "같습니다", 아니면 "같지 않습니다"를 출력하라.

 

 

 

2. 결과

 

 

3. 코드

 

#include <iostream>
#include <string>
using namespace std;

int main() 
{
	string a, b;

	cout << "새 암호를 입력하세요>>";
	getline( cin, a );
	cout << "새 암호를 다시 한 번 입력하세요>>";
	getline( cin, b );

	if( a == b)
		cout << "같습니다.\n";
	else
		cout << "다릅니다.\n";

}

 

 

4. 설명

 

string 변수 a와 b를 선언한 후 getline()으로 입력 받은 후 if문으로 비교하여서 결과를 출력합니다.

 

본래 문자열 함수로 입력받은 문자열을 비교할려면 strcmp를 사용해야 하지만 string 변수들은 == 으로 같은지 비교할 수 있습니다.

 

string변수를 사용하려면 #include <string>을 해주셔야 합니다.

 

 

※ '=' : 대입연산자, '==' : 비교연산자로서 다른 것 입니다.

 

 

 

1. 문제

 

5. <Enter> 키가 입력될 때까지 문자들을 읽고, 입력된 문자 'x'의 개수를 화면에 출력하라.

 

 

 

2. 결과

 

 

 

3. 코드

 

#include <iostream>
#include <cstring>
using namespace std;

int main() 
{
	char s[100];
	int count=0;

	cout << "문자들을 입력하라(100개 미만)." << endl;
	cin.getline( s,100 );

	for(int i=0; i< strlen(s); i++)
		if( s[i] == 'x' ) count++;
	cout << "x의 개수는 " << count << endl;
}

 

4. 설명

 

문자열 배열 s를 선언한 후 cin.getline(s, 100);으로 문자열을 입력 받습니다.

 

cin.getline()은 매개변수가 3개로 3번 째 매개변수는 구분자로서 디폴트 값이 '\n'으로 되어 있어서 따로 구분할 문자가 없으면 생략해도 됩니다.

 

cstring은 strlen 때문에 include하였습니다. cstring을 include하지 않아도 실행 하는데는 문제 없습니다.

 

 

 

1. 문제

 

4. 소수점을 가지는 5개의 실수를 입력 받아 제일 큰 수를 화면에 출력하라.

 

 

2. 결과

 

 

3. 코드

 

#include <iostream>
using namespace std;

int main() 
{
	double a[5];

	cout << "5 개의 실수를 입력하라>>";
	cin >> a[0] >> a[1] >> a[2] >> a[3] >> a[4] ;

	double max = a[0];
	for(int i=1; i<5; i++)
		if( a[i] > max) max = a[i];
	cout << "제일 큰 수 = " << max << endl;
}

 

 

4. 설명

 

실수형이므로 크기가 5인 double형 배열을 선언 한 후 cin >>을 연속으로하여서 입력 받습니다.

 

cin >> a[0] >> a[1] >> a[2] ... 이렇게 연속으로 입력받을 수 있는 이유는 나중에 나오니 지금은 할 수 있다는 것만 아시면 됩니다.

 

5개의 수를 입력받았으면 배열에 저장된 값들을 비교해서 가장 큰 값을 구해 출력합니다.

 

 

 

1. 문제

 

3. 키보드로부터 두 개의 정수를 읽어 큰 수를 화면에 출력하라.

 

 

2. 결과

 

 

 

3. 코드

 

#include <iostream>
using namespace std;

int main() 
{
	int a,b;

	cout << "두 수를 입력하라>>";
	cin >> a >> b;
	if( a >=b )
		cout << "큰 수 = " << a << endl;
	else 
		cout << "큰 수 = " << b << endl;
}

 

 

4. 설명

 

두 수를 입력 받은 후 if문으로 큰 수를 비교하여 출력하는 문제입니다.

 

if( a>=b )로 하여서 a와 b의 값이 같더라도 가장 큰 값인 a가 출력되도록 하였습니다.

 

 

※ int형 변수를 입력받을 때는 cin >> 을 이용하는 것이 가장 좋습니다.

 

 

1. 문제

 

2. cout과 << 연산자를 이용하여 다음과 같이 구구단을 출력하는 프로그램을 작성하라.

 

 

 

2. 결과

 

 

 

3. 코드

#include <iostream>
using namespace std;

int main() 
{
	int i,j;

	for(i=1; i<=9; i++) {
		for( j=1; j<=9; j++) 
			cout << j << "x" << i << "=" << j*i << "\t";
		cout << endl;
	}
}

 

 

4. 설명

 

1번과 같은 유형에 문제로서 구구단을 출력하는 간단한 문제입니다.

 

첫 번째 for문은 2번 째 수에 해당하며 두 번째 for문은 1번 째 수 단을 나타내는 숫자입니다.

 

이렇게 한 이유는 출력 결과가 각 단에서 x1을 한 값을 다 출력하고 x2한 값을 출력하는 형태이기 때문입니다.

 

 

1. 문제

 

1. cout과 << 연산자를 이용하여, 1에서 100까지 정수를 다음과 같이 한 줄에 10개씩 출력하라. 각 정수는 탭으로 분리하여 출력하라.

 

 

 

2. 결과

 

 

 

 

3. 코드

 

#include <iostream>

using namespace std;

int main()
{
	int i,j;

	for(i=0; i<=90; i+=10) {
		for(j=1; j<=10; j++)
			cout << i+j << "\t";
		cout << endl;
	}
}

 

 

4. 설명

 

for문을 2개 이용하면 구현할 수 있습니다.

 

첫 번째 for문의 변수 i는 십의 자릿 수를, 두 번째 for문은 변수 j는 일의 자릿 수를 표현합니다.

 

※ \t : tab을 눌렀을 때처럼 일정 간격을 띄어쓰기 해줍니다.

+ Recent posts