-6

私はPythonに非常に慣れていないので、私の質問は少し些細なことに思えるかもしれませんが、私を信じてください。それは今私にとってロケット科学のようです. それで、ここにあります。整数を含むユーザー入力の 1 行を読み取り、その数値の倍数をその数値の 12 倍まで出力するプログラムを作成する必要があります。例えば:

数字を入力してください: 3

3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15
3 x 6 = 18
3 x 7 = 21
3 x 8 = 24
3 x 9 = 27
3 x 10 = 30
3 x 11 = 33
3 x 12 = 36

for 関数と range 関数を使用する必要があると思いますが、その方法がわかりません。私を助けてください :(

4

5 に答える 5

3

これは本当に基本的なプログラムです。上記のすべては基本的なPython自体でカバーされています。

Bytes of PythonLearnPythonなどの次のリンクを経由する必要があります

あなたが通り抜けて始めるためのより多くのチュートリアルがあります。

この行は、ユーザーからの入力を受け取ります

In [8]: n = raw_input("Enter a number : ")
Enter a number : 5

この行は、値1から12のセットを繰り返し処理します。Pythonでは、これに範囲関数を使用できます。

range(1, 13)範囲関数が最後の値の前に停止するcozがありますか。

%sはCと同様の文字列フォーマット構文であり、最後int(n)にcoz入力は文字列フォーマットであるため、乗算を行う前にintに変換する必要があります。

In [9]: for i in range(1,13):
   ...:     print "%s x %s = %s" %(n, i, i*int(n))
   ...:
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
5 x 10 = 50
5 x 11 = 55
5 x 12 = 60
于 2012-08-27T08:36:51.003 に答える
0
x = raw_input('Enter a number: ')
for i in range(1,12):
   print int(x)*i

ただし、xが実際に数値であるかどうかを確認する必要があります;)

于 2012-08-27T08:36:36.110 に答える
0

そして、これはツイートに収まる理解できないワンライナーです。

import itertools;print"\n".join("%d x %d = %d"%(x+(x[0]*x[1],))for x in itertools.product([int(raw_input("Enter a number : "))],range(1,13)))
于 2012-08-27T08:52:06.783 に答える
0
>>> inp=int(raw_input('enter an integer'))
enter an integer 5
>>> for i in xrange(1,13):         #use range() if you're on python 3.x
...   print "{0} X {1} = {2}".format(inp,i,inp*i)
... 
5 X 1 = 5
5 X 2 = 10
5 X 3 = 15
5 X 4 = 20
5 X 5 = 25
5 X 6 = 30
5 X 7 = 35
5 X 8 = 40
5 X 9 = 45
5 X 10 = 50
5 X 11 = 55
5 X 12 = 60
于 2012-08-27T08:40:20.953 に答える
0
var = raw_input("Enter something: ")
print "you entered ", var

for n in range(1, 10):
    prod = int(var)*n
    print str(var) + " X " + str(n) + " = "  + str(prod)
于 2012-08-27T08:40:50.580 に答える