카테고리 없음

11일차 과제 3

신승호. 2023. 2. 9. 01:31

주어진 데이터를 활용하여 제시되는 결과를 만드는 코드를 작성하시오

randomData, mathData에 각각 총 100개의 요소가 있다.

var randomData = ['x', 'p', 's', 'j', 'm', 'V', 'X', 'g', 'v', 'o', 
	'c', 'f', 'R', 'L', 'a', 'T', 'q', 'S', 'Z', 'l', 'F', 
	'E', 'D', 'r', 'k', 'G', 'H', 't', 'd', 'C', 'e', 'I', 
	'K', 'Q', 'B', 'i', 'W', 'N', 'J', 'O', 'h', 'w', 'U', 
	'P', 'u', 'A', 'Y', 'M', 'y', 'z', 'b', 'n', 'x', 'p', 
	's', 'j', 'm', 'V', 'X', 'g', 'v', 'o', 'c', 'f', 'R', 
	'L', 'a', 'T', 'q', 'S', 'Z', 'l', 'F', 'E', 'D', 'r', 
	'k', 'G', 'H', 't', 'd', 'C', 'e', 'I', 'K', 'Q', 'B', 
	'i', 'W', 'N', 'J', 'O', 'h', 'w', 'U', 'P', 'u', 'A', 'Y', 'M']
var mathData = [26, 2, 9, 47, 98, 24, 43, 99, 96, 45, 35, 
			19, 37, 60, 31, 74, 26, 4, 28, 19, 59, 14, 75, 13, 
			93, 88, 64, 15, 68, 34, 96, 48, 1, 44, 14, 11, 31, 
			39, 28, 100, 22, 73, 78, 98, 36, 49, 74, 16, 35, 91, 
			14, 73, 93, 49, 3, 99, 4, 29, 86, 56, 17, 13, 97, 55, 
			94, 7, 100, 66, 59, 85, 94, 11, 16, 48, 16, 44, 75, 14, 
			17, 88, 92, 12, 49, 35, 42, 82, 19, 27, 11, 21, 34, 27, 
			47, 40, 66, 90, 99, 93, 63, 90];

1. mathData에 50이 넘는 수가 몇 개인지 확인하는 코드를 작성하시오.

void main(){
  var mathData = [26, 2, 9, 47, 98, 24, 43, 99, 96, 45, 35, 
			19, 37, 60, 31, 74, 26, 4, 28, 19, 59, 14, 75, 13, 
			93, 88, 64, 15, 68, 34, 96, 48, 1, 44, 14, 11, 31, 
			39, 28, 100, 22, 73, 78, 98, 36, 49, 74, 16, 35, 91, 
			14, 73, 93, 49, 3, 99, 4, 29, 86, 56, 17, 13, 97, 55, 
			94, 7, 100, 66, 59, 85, 94, 11, 16, 48, 16, 44, 75, 14, 
			17, 88, 92, 12, 49, 35, 42, 82, 19, 27, 11, 21, 34, 27, 
			47, 40, 66, 90, 99, 93, 63, 90];
 print(mathData.where((e){
	return e>50;
 }).toList().length);
}

1번 결과

50이 넘는 숫자를 필터링하고 length를 사용해 거른 개수출력

 

2. mathData에 80이 넘어가는 수만 고르고 난 뒤, 각 수에 곱하기 2를 한 후 변수 mathData2에 새로 저장하는 코드를 작성하시오.

void main(){
  var mathData = [26, 2, 9, 47, 98, 24, 43, 99, 96, 45, 35, 
			19, 37, 60, 31, 74, 26, 4, 28, 19, 59, 14, 75, 13, 
			93, 88, 64, 15, 68, 34, 96, 48, 1, 44, 14, 11, 31, 
			39, 28, 100, 22, 73, 78, 98, 36, 49, 74, 16, 35, 91, 
			14, 73, 93, 49, 3, 99, 4, 29, 86, 56, 17, 13, 97, 55, 
			94, 7, 100, 66, 59, 85, 94, 11, 16, 48, 16, 44, 75, 14, 
			17, 88, 92, 12, 49, 35, 42, 82, 19, 27, 11, 21, 34, 27, 
			47, 40, 66, 90, 99, 93, 63, 90];
  var mathData2 = mathData.where((e){
				return e>80;
			 }).map((e){
  				 return e*2;
			 }).toList();

변수 mathData2에 80점이상인 점수만 고르고 map을 이용해서 곱하기 2한 숫자들을 저장했다.

 

 

3. mathData와 randomData의 데이터를 섞어서 다음과 같은 결과를 만드시오. (x26은 mathData[0]과 mathData[1]이 합쳐져 만들어진 결과이다. 코드 작성은 자유방식이다.)

void main(){
  var randomData = ['x', 'p', 's', 'j', 'm', 'V', 'X', 'g', 'v', 'o', 
	'c', 'f', 'R', 'L', 'a', 'T', 'q', 'S', 'Z', 'l', 'F', 
	'E', 'D', 'r', 'k', 'G', 'H', 't', 'd', 'C', 'e', 'I', 
	'K', 'Q', 'B', 'i', 'W', 'N', 'J', 'O', 'h', 'w', 'U', 
	'P', 'u', 'A', 'Y', 'M', 'y', 'z', 'b', 'n', 'x', 'p', 
	's', 'j', 'm', 'V', 'X', 'g', 'v', 'o', 'c', 'f', 'R', 
	'L', 'a', 'T', 'q', 'S', 'Z', 'l', 'F', 'E', 'D', 'r', 
	'k', 'G', 'H', 't', 'd', 'C', 'e', 'I', 'K', 'Q', 'B', 
	'i', 'W', 'N', 'J', 'O', 'h', 'w', 'U', 'P', 'u', 'A', 'Y', 'M'];
  var mathData = [26, 2, 9, 47, 98, 24, 43, 99, 96, 45, 35, 
			19, 37, 60, 31, 74, 26, 4, 28, 19, 59, 14, 75, 13, 
			93, 88, 64, 15, 68, 34, 96, 48, 1, 44, 14, 11, 31, 
			39, 28, 100, 22, 73, 78, 98, 36, 49, 74, 16, 35, 91, 
			14, 73, 93, 49, 3, 99, 4, 29, 86, 56, 17, 13, 97, 55, 
			94, 7, 100, 66, 59, 85, 94, 11, 16, 48, 16, 44, 75, 14, 
			17, 88, 92, 12, 49, 35, 42, 82, 19, 27, 11, 21, 34, 27, 
			47, 40, 66, 90, 99, 93, 63, 90];
  
  for(var i = 0;i<=99;i++){
    print(randomData[i]+mathData[i].toString());   //String과 Int는 덧셈이 안돼서 int를 String형태로 바꾸고 더함
  }
}

3번결과