곱셈 (2588)

Created:

Baekjoon No.2558
두 번째 수를 각 자리별로 잘라서 사용했다.

Bash

Bash
1
2
3
4
5
6
7
8
9
read a
read b
b3=${b::1}
b2=${b:1:1}
b1=${b:2}
echo $((a * b1))
echo $((a * b2))
echo $((a * b3))
echo $((a * b))

Bash의 변수는 기본적으로 모두 문자열로 취급하며, 연산 시 알아서 숫자로 변환하는 특징을 가지고 있다.
필요시 declare 명령어로 자료형을 지정할 수도 있다.

C

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>

int main(void) {
	int a, b;
	scanf("%d", &a);
	scanf("%d", &b);

	int b1, b2, b3;
	b3 = b/100;
	b2 = (b-b3*100)/10;
	b1 = (b-b3*100)%10;

	printf("%d\n", a*b1);
	printf("%d\n", a*b2);
	printf("%d\n", a*b3);
	printf("%d\n", a*b);

	return 0;
}

Node.js

JavaScript
1
2
3
4
5
6
let [a, b] = require("fs").readFileSync(0).toString().trim().split("\n").map(Number);
let bs = (b+"").split("").map(Number);
console.log(a*bs[2]);
console.log(a*bs[1]);
console.log(a*bs[0]);
console.log(a*b);

b+"" == String(b)

PHP

PHP
1
2
3
4
5
6
7
8
9
10
11
<?php
	fscanf(STDIN, "%d", $a);
	fscanf(STDIN, "%d", $b);

	$str = $b."";
	list ($b3, $b2, $b1) = [$str[0], $str[1], $str[2]];
	echo $a * $b1."\n";
	echo $a * $b2."\n";
	echo $a * $b3."\n";
	echo $a * $b."\n";
?>

$b."" == strval($b)

Python3

Python
1
2
3
4
5
6
7
8
a = int(input())
b = int(input())
b3, b2, b1 = map(int, str(b))

print(a*b1)
print(a*b2)
print(a*b3)
print(a*b)

숫자 385를 문자열로 바꾼 후 int로 매핑하면 리스트 [3, 8, 5]로 바뀐다.

Ruby

Ruby
1
2
3
4
5
a = gets.chomp.to_i
b = gets.chomp.to_i
b3, b2, b1 = b.to_s.split("").map {|i| i.to_i}

puts a*b1, a*b2, a*b3, a*b