Your goal is to return multiplication table for ```number``` that is always an integer from 1 to 10.

For example, a multiplication table (string) for ```number == 5``` looks like below:

```
1 * 5 = 5
2 * 5 = 10
3 * 5 = 15
4 * 5 = 20
5 * 5 = 25
6 * 5 = 30
7 * 5 = 35
8 * 5 = 40
9 * 5 = 45
10 * 5 = 50
```

P. S. You can use ```\n``` in string to jump to the next line.

Difficulty: EASY
Tags: String algorithms

Fundamentals

Starter code:
def multi_table(number):
	

Solutions:
def multi_table(number):
	return '\n'.join((f'{i} * {number} = {i * number}' for i in range(1, 11)))


def multi_table(number):
	table = ['{0} * {1} = {2}'.format(i, number, i * number) for i in range(1, 11)]
	return '\n'.join(table)


def multi_table(number):
	st = str()
	for x in range(1, 11):
		z = number * x
		st += '{} * {} = {}\n'.format(x, number, z)
	sti = st.strip('\n')
	return sti


def multi_table(n):
	return '\n'.join(['%d * %d = %d' % (i, n, n * i) for i in range(1, 11)])


multi_table = lambda number: '\n'.join((f'{r} * {number} = {r * number}' for r in range(1, 11)))


multi_table = lambda n: '\n'.join([f'{i} * {n} = {i * n}' for i in range(1, 11)])


multi_table = lambda number: '\n'.join(('{} * {} = {}'.format(x, number, x * number) for x in range(1, 11)))


def multi_table(number: int) -> str:
	return '\n'.join([f'{_it} * {number} = {_it * number}' for _it in range(1, 11)])


def multi_table(number):
	table = ''
	for each in range(1, 11):
		table += '%d * %d = %d\n' % (each, number, each * number)
	return table[:-1]


def multi_table(number):
	return ''.join([str(x) + ' * ' + str(number) + ' = ' + str(x * number) + '\n' for x in range(1, 11)])[:-1]


multi_table = lambda n: '\n'.join((str(i) + ' * ' + str(n) + ' = ' + str(i * n) for i in range(1, 11)))


def multi_table(number):
	table = ''
	for i in range(1, 11):
		table += '{} * {} = {}\n'.format(i, number, i * number)
	table = table.rstrip('\n')
	return table


def multi_table(number):
	s = ''
	for i in range(1, 10):
		s = s + str(i) + ' * ' + str(number) + ' = ' + str(i * number) + '\n'
	return s + '10' + ' * ' + str(number) + ' = ' + str(10 * number)


def multi_table(number):
	table = ''
	for i in range(1, 11):
		table += f'{i} * {number} = {i * number}' + '\n' * (i < 10)
	return table


def multi_table(number):
	res = ''
	for i in range(1, 11):
		res += '{} * {} = {}\n'.format(i, number, i * number)
	return res[:-1]


def multi_table(number):
	str = ''
	for i in range(10):
		str = str + '{} * {} = {}\n'.format(i + 1, number, (i + 1) * number)
	str = str[0:-1]
	return str


def multi_table(number):
	s = ''
	for i in range(1, 11):
		result = number * i
		r = str(str(i) + ' * ' + str(number) + ' = ' + str(result))
		if i in range(1, 10):
			s += r + '\n'
		else:
			s += r
	return s


def multi_table(number):
	s = ''
	for i in range(1, 11):
		if i > 1:
			s += '\n'
		s += str(i) + ' * ' + str(number) + ' = ' + str(i * number)
	return s


def multi_table(number):
	lst = []
	for i in range(1, 11):
		item = f'{i} * {number} = {i * number}'
		lst.append(item)
	return '\n'.join(lst)


def multi_table(number):
	res = ''
	for i in range(1, 11):
		res += str(i) + ' * ' + str(number) + ' = ' + str(i * number)
		if i != 10:
			res += '\n'
	return res


def multi_table(number):
	return f'1 * {number} = {1 * number}\n2 * {number} = {2 * number}\n3 * {number} = {3 * number}\n4 * {number} = {4 * number}\n5 * {number} = {5 * number}\n6 * {number} = {6 * number}\n7 * {number} = {7 * number}\n8 * {number} = {8 * number}\n9 * {number} = {9 * number}\n10 * {number} = {10 * number}'


def multi_table(n):
	table = []
	for i in range(1, 11):
		table.append(f'{i} * {n} = {i * n}')
	string = '\n'.join(table)
	return string


def multi_table(n):
	r = f'1 * {n} = {n}'
	for i in range(2, 11):
		r += f'\n{i} * {n} = {i * n}'
	return r


def multi_table(number):
	tab = ''
	for n in range(1, 11):
		r = n * number
		tab += f'{n} * {number} = {r}'
		if n < 10:
			tab += '\n'
	return tab


def multi_table(number):
	out = []
	for i in range(1, 11):
		out.append('{} * {} = {}'.format(i, number, i * number))
	return '\n'.join(out)


def multi_table(i):
	return '1 * ' + str(i) + ' = ' + str(i) + '\n2 * ' + str(i) + ' = ' + str(i * 2) + '\n3 * ' + str(i) + ' = ' + str(i * 3) + '\n4 * ' + str(i) + ' = ' + str(i * 4) + '\n5 * ' + str(i) + ' = ' + str(i * 5) + '\n6 * ' + str(i) + ' = ' + str(i * 6) + '\n7 * ' + str(i) + ' = ' + str(i * 7) + '\n8 * ' + str(i) + ' = ' + str(i * 8) + '\n9 * ' + str(i) + ' = ' + str(i * 9) + '\n10 * ' + str(i) + ' = ' + str(i * 10)


def multi_table(number):
	index = 1
	k = ''
	while True:
		if index <= 10:
			k += '{} * {} = {}\n'.format(index, number, index * number)
		else:
			break
		index += 1
	return k[:-1]


def multi_table(number):
	result = ''
	for i in range(1, 10 + 1):
		result += '{} * {} = {}\n'.format(i, number, i * number)
	return result[:-1]


def multi_table(number):
	res = ''
	for i in range(10):
		res += f'{i + 1} * {number} = {(i + 1) * number}\n'
	return res[:-1]


def multi_table(n):
	m = []
	for i in range(1, 11):
		m.append(f'{i} * {n} = {i * n}')
	w = '\n'.join(m)
	return w


def multi_table(number):
	x = list(range(1, 11))
	y = ''
	z = 0
	while z < len(x):
		y += '{} * {} = {}\n'.format(x[z], number, x[z] * number)
		z += 1
	return y[:-1]


def multi_table(number):
	string = ''
	i = 0
	for multiply in range(1, 10):
		i += 1
		string = string + f'{multiply} * {number} = {multiply * number}\n'
	else:
		string = string + f'{10} * {number} = {10 * number}'
	return string


def multi_table(number):
	final = []
	count = 1
	for i in range(10):
		final.append(str(count))
		final.append(' * ')
		final.append(str(number))
		final.append(' = ')
		prod = count * number
		final.append(str(prod))
		if count != 10:
			final.append('\n')
		count += 1
	return ''.join(final)


def multi_table(number):
	s = ''
	for x in range(1, 11):
		s += f'{x} * {number} = {x * number}\n'
	return s[0:-1]


def multi_table(number):
	return '\n'.join(['{e} * {d} = {c}'.format(e=i, d=number, c=i * number) for i in range(1, 11)])


def multi_table(number):
	a = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
	b = []
	f = 1
	g = ''
	for i in a:
		f = i * number
		b.append('{e} * {d} = {c}'.format(e=i, d=number, c=f))
		g = '\n'.join(b)
	return g


def multi_table(number):
	return '1 * ' + str(number) + ' = ' + str(1 * number) + '\n' + '2 * ' + str(number) + ' = ' + str(2 * number) + '\n' + '3 * ' + str(number) + ' = ' + str(3 * number) + '\n' + '4 * ' + str(number) + ' = ' + str(4 * number) + '\n' + '5 * ' + str(number) + ' = ' + str(5 * number) + '\n' + '6 * ' + str(number) + ' = ' + str(6 * number) + '\n' + '7 * ' + str(number) + ' = ' + str(7 * number) + '\n' + '8 * ' + str(number) + ' = ' + str(8 * number) + '\n' + '9 * ' + str(number) + ' = ' + str(9 * number) + '\n' + '10 * ' + str(number) + ' = ' + str(10 * number)


def multi_table(number):
	out = ''
	for i in range(1, 11):
		out += str(i) + ' * ' + str(number) + ' = ' + str(i * number) + '\n'
	return out.strip('\n')


def multi_table(number):
	table = '1 * ' + str(number) + ' = ' + str(number * 1)
	for x in range(9):
		x += 2
		table = table + '\n' + str(x) + ' * ' + str(number) + ' = ' + str(number * x)
	return table


def multi_table(number):
	lst = list()
	for i in range(1, 11):
		result = f'{i} * {number} = {i * int(number)}'
		lst.append(result)
	return '\n'.join(lst)


def multi_table(number):
	res = ''
	for i in range(1, 11):
		temp = number * i
		res += str(i) + ' * ' + str(number) + ' = ' + str(temp) + '\n'
	return res[:-1]


def multi_table(n):
	return '\n'.join((f'{m} * {n} = {m * n}' for m in range(1, 11)))


def multi_table(number):
	emptystring = ''
	for eachnumber in range(1, 11):
		if eachnumber == 10:
			emptystring = emptystring + '{} * {} = {}'.format(eachnumber, number, eachnumber * number)
		else:
			emptystring = emptystring + '{} * {} = {}\n'.format(eachnumber, number, eachnumber * number)
	return emptystring


def multi_table(number):
	st = ''
	for i in range(1, 11):
		res = i * number
		if i == 1:
			st = st + f'{i} * {number} = {res}'
		else:
			st = st + f'\n{i} * {number} = {res}'
	return st


def multi_table(number):
	n = str(number)
	i = 1
	string = ''
	while i <= 10:
		ans = i * number
		string = string + str(i) + ' * ' + n + ' = ' + str(ans) + '\n'
		i = i + 1
	return string[:len(string) - 1]


def multi_table(number):
	a = []
	for i in range(1, 11):
		a.append(i * number)
	b = ''
	count = 1
	for i in a:
		b += str(count) + ' * ' + str(number) + ' = ' + str(i) + '\n'
		count += 1
	return b[0:-1]


def multi_table(number):
	msg = ''
	for x in range(1, 11):
		msg += str(x) + ' * ' + str(number) + ' = ' + str(x * number) + '\n'
	return msg[0:-1]


def multi_table(n):
	return '\n'.join([f'{x} * {n} = {x * n}' for x in range(1, 11)])


def multi_table(number):
	return '\n'.join(('{} * {} = {}'.format(c, number, c * number) for c in range(1, 11)))


def multi_table(number):
	table = ''
	for n in range(1, 11):
		table += '{0} * {1} = {2}'.format(n, number, n * number)
		if n < 10:
			table += '\n'
	return table


def multi_table(table):
	results = ''
	for i in range(1, 10):
		results += f'{i} * {table} = {i * table}\n'
	return results + f'{10} * {table} = {10 * table}'


def multi_table(number):
	a = ['{} * {} = {}'.format(i, number, i * number) for i in range(1, 11)]
	return '\n'.join(a)


def multi_table(number):
	arr = [f'{i + 1} * {number} = {(i + 1) * number}' for i in range(10)]
	return '\n'.join(arr)


def multi_table(number):
	res = ''
	for i in range(1, 11):
		res += f'{i} * {number} = {i * number}\n'
	return res.strip('\n')


multi_table = lambda n: '\n'.join(['{0} * {1} = {2}'.format(i, n, i * n) for i in range(1, 11)])


def multi_table(n):
	x = ''
	for i in range(1, 11):
		x += '{} * {} = {}\n'.format(i, n, i * n)
	return x[:-1]


def multi_table(number):
	counter = 1
	table = ''
	while counter < 11:
		table += str(counter) + ' * ' + str(number) + ' = ' + str(number * counter) + '\n'
		counter += 1
	return table[:-1]


def multi_table(number):
	result = ''
	for i in range(1, 11):
		if i == 10:
			result += f'{i} * {number} = {i * number}'
		else:
			result += f'{i} * {number} = {i * number}\n'
	return result