我怎样才能将C ++转换为Python

how could I convert c++ to python

本文关键字:转换 Python      更新时间:2023-10-16
#include <iostream>
using namespace std;
int main() {   
  int n;
  int i;  
  int k; 
  cout << "please insert n";
  cin >> n; k=0 ;
  for (i = n; i > 1; i--) {
    cout << "/n "<< k << "+" << i << "=" << i + k++;
  }
  return 0;     
}  

正在尝试在 python 中重现上述代码,但我不确定我出了什么问题。我不确定如何从一个数字开始,然后递减直到满足条件。这是我到目前为止所拥有的:

k=0
n=4
for i in range(n)
 if i > 1 :
  i-=1
  k+=1
print(i+k++) 

我做错了什么?

n = int(input("please insert n : "))
k = 0
for i in range(n,1,-1):
    print('n',k,'+',i,'=',i+k)
    k=k+1

range本身解决了一半的问题。其余的事情只是格式化和输入数字。

range(n,1,-1) 表示范围从 n 开始,以 1 结束,它们之间有一个-1步。

n, n+(-1), n+(-2),...,1 .

<小时 />

您的C++程序生成错误的输出:-

/n 1+4=4/n 2+3=4/n 3+2=4

正确的代码:

for(i=n,k=0; i > 1 ; i--,k++){
   cout << "n "<< k << "+" << i << "=" << i + k;
}

你的意思是n(换行符(C++而不是/n.

你需要一个递减的 for 循环。

# range(4,1,-1) would give a list of [4,3,2]
# for loop iterates through each number.
k = 0
n = 4
# This iterates from n = 4 to 1
# decrementing one step at a time, needn't specifically handle i in your loop body. 
# So i would get values of 4,3,2
for i in range(n,1,-1):
    print(k,i)
    # no ++ operator in python.
    k+=1