Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

자료병합하기/허아영: Difference between revisions

From ZeroWiki
imported>Unknown
No edit summary
 
(Repair batch-0006 pages from live compare)
 
Line 7: Line 7:
  void main()
  void main()
  {
  {
  int a[] = {10, 40, 70, 80, 90, 99};
  int a[] = {10, 40, 70, 80, 90, 99};
  int b[] = {20, 30, 40, 50, 60, 70, 85, 90, 95, 97, 99};
  int b[] = {20, 30, 40, 50, 60, 70, 85, 90, 95, 97, 99};
  int c[20], i = 0;
  int c[20], i = 0;
  int turn_a = 0, turn_b = 0, turn_c = -1;
  int turn_a = 0, turn_b = 0, turn_c = -1;
  //C배열에 넣기
  //C배열에 넣기
  while(a[turn_a] <= 99 && b[turn_b] <= 99)
  while(a[turn_a] <= 99 && b[turn_b] <= 99)
  {
  {
  ++turn_c;
  ++turn_c;
  if(a[turn_a] < b[turn_b]){
  if(a[turn_a] < b[turn_b]){
  c[turn_c] = a[turn_a];
  c[turn_c] = a[turn_a];
  ++turn_a;
  ++turn_a;
  }else if(a[turn_a] == b[turn_b]){
  }else if(a[turn_a] == b[turn_b]){
  c[turn_c] = a[turn_a];
  c[turn_c] = a[turn_a];
  ++turn_a;
  ++turn_a;
  ++turn_b;
  ++turn_b;
  }else{
  }else{
  c[turn_c] = b[turn_b];
  c[turn_c] = b[turn_b];
  ++turn_b;
  ++turn_b;
  }
  }
Line 33: Line 33:
  printf("A = ");
  printf("A = ");
  while(i < turn_a){
  while(i < turn_a){
  printf("%d ", a[i]);
  printf("%d ", a[i]);
  ++i;
  ++i;
  }
  }
Line 39: Line 39:
  printf("nB = ");
  printf("nB = ");
  while(i < turn_b){
  while(i < turn_b){
  printf("%d ", b[i]);
  printf("%d ", b[i]);
  ++i;
  ++i;
  }
  }
Line 45: Line 45:
  printf("nC = ");
  printf("nC = ");
  while(i <= turn_c){
  while(i <= turn_c){
  printf("%d ", c[i]);
  printf("%d ", c[i]);
  ++i;
  ++i;
  }
  }
  }
  }
[[:File:LittleAOI12.bmp|LittleAOI12.bmp]]
LittleAOI12.bmp


=== 나한테 할 말 ===
=== 나한테 할 말 ===
Line 56: Line 56:
----
----
[[LittleAOI]] [[자료병합하기]]
[[LittleAOI]] [[자료병합하기]]

Latest revision as of 01:08, 27 March 2026

소 감

아무 구상없이 그냥 생각나는 대로 짰다. 리펙토링이 필요하다.

소 스

#include <stdio.h>

void main()
{
	int a[] = {10, 40, 70, 80, 90, 99};
	int b[] = {20, 30, 40, 50, 60, 70, 85, 90, 95, 97, 99};
	int c[20], i = 0;
	int turn_a = 0, turn_b = 0, turn_c = -1;
	//C배열에 넣기
	while(a[turn_a] <= 99 && b[turn_b] <= 99)
	{
		++turn_c;
		if(a[turn_a] < b[turn_b]){
			c[turn_c] = a[turn_a];
			++turn_a;
		}else if(a[turn_a] == b[turn_b]){
			c[turn_c] = a[turn_a];
			++turn_a;
			++turn_b;
		}else{
			c[turn_c] = b[turn_b];
			++turn_b;
		}
	}
         // 출력
	printf("***************n");
	printf("*MERGE PROGRAM*n");
	printf("***************n");
	printf("A = ");
	while(i < turn_a){
		printf("%d ", a[i]);
		++i;
	}
	i = 0;
	printf("nB = ");
	while(i < turn_b){
		printf("%d ", b[i]);
		++i;
	}
	i = 0;
	printf("nC = ");
	while(i <= turn_c){
		printf("%d ", c[i]);
		++i;
	}
}

LittleAOI12.bmp

나한테 할 말


LittleAOI 자료병합하기