我要做一个程序来教孩子乘法器,这是作业的核心代码
#include <stdio.h>
#define MIN 1
#define MAXINDEX 10
#define MAXTABLE 10
#define STEP 1
void main(void)
{
int i,j ;
for (j = MIN; j <MAXTABLE; j += STEP) {
for (i = MIN; i <= MAXINDEX; i += STEP)
printf(“%3d * %3d = %3d\n”, i, j, i*j);
printf(“\n---------------\n\n”);
}
for (i = MIN; i <= MAXINDEX; i += STEP)
printf(“%3d * %3d = %3d\n”, i, MAXTABLE, i*MAXTABLE);
}
之后我不得不将它重写为下一代语言,所以我设计用python编写它。 像这样
j=1
i=1
for j in range(1,11):
for i in range(1,11):
print('%3d * %3d =%3d' % (i, j, i *j))
if j!=10:
print("\n---------------\n")
else:
print("\n")
在那之后,我必须为它制作一个UI,所以这个图像就是我设计的,就像这样This is the design of me
因为我刚学了3天python,所以我尽力写了以下内容:
import PySimpleGUI as sg
import os.path
def Corecode():
j=1
i=1
for j in range(1,11):
for i in range(1,11):
print('%3d * %3d =%3d' % (i, j, i *j))
if j!=10:
print("\n---------------\n")
else:
print("\n")
from PySimpleGUI.PySimpleGUI import R, Image, Multiline
showrobot_column = [
[sg.Image('E:\img\robot.png',size = (300,300))],
],
show_Textbox_selectbox = [
[sg.Multiline(size=(50,20),key='-def-')],
[sg.Listbox(values=['a','b','c','d'], enable_events=True, size=(50,20), key="")]
]
layout = [
[sg.Column(showrobot_column),
sg.VSeparator(),
sg.Column(show_Textbox_selectbox)
]
]
window = sg.Window("First Test",layout)
while True:
event, value = window.read()
if event == sg.WIN_CLOSED:
break
window.close()
我设计的目的是让它像机器人一样说话,让孩子们通过按钮进行交互,但是我发现我不能插入图像,也找不到一种方法通过前面的核心代码打印乘法器表,所以有人可以帮我完成代码或告诉我sg.image出错的原因。泰
这是对Jason答案的一个无耻的小调整(选择他的答案,因为它是正确的)
希望包括一些可能对某些人有用的功能。一个是,几乎所有元素都有一个初始值,您可以在布局中设置该值,而不是最终确定它然后再设置它们。它减少了代码
我也在这个答案中加入了一个“饰品”作为测试。这样,您就可以在此StackOverflow页面上运行该示例
这里是一个链接,如果它没有正确嵌入-https://trinket.io/pygame/d59ef3b352
试试这个