用VB编写的简单汉诺塔程序 Private Sub cmdStart_Click() n = Int(Text1.Text) ReDim Data(1 To n, 1 To 3) For i = 1 To n For j = 1 To 3 Data(i, j) = 0 Next j Next i For i = 1 To n Data(i, 1) = i Next i ColNow = 1 SelNum = 0 Call ShowPic End Sub Private Sub Form_Key
1. 给定等式 A B C D E 其中每个字母代表一个数字,且不同数字对应不 D F G 同字母。编程求出这些数字并且打出这个数字的 + D F G 算术计算竖式。 ─────── X Y Z D E Z = 45 –a-b-c-d-e-f-x-y;1+2+3+4….+9 = 45; 2. A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些 人参加了竞赛: (1)A参加时,B也参加; (2)B和C只有一个人参加; (3)C和D或者都参加,或者都不参加; (4)D和E中至少有
// helloworld.cpp : Defines the entry point for the console application. // //by 陈墨仙 2019-07-18 //完全不用递归解汉诺塔 #include "stdafx.h" #include int h[34];//为了便于理解,0号元素不用,33个盘子 int a[4][34]; int b[4]; int jihao; int dijici; void printH() { //system("cls")
直接上代码:
#左中右塔用一个列表存储
left = list()
center = list()
right = list()
"""
初始化函数
"""
def init():
size = input("(请友善输入整数,未写判断!)请输入层数:")
#初始化塔列表,如5层 左边塔放 1-3-5-7-9,中间和右边放5个-1
for i in range(1,int(size) + 1):
left.append(i*2-1)
center.append(-1
先上效果图
再附上源代码:
汉诺塔:
代码如下:
#include “stdio.h”
#include “math.h”
int arrA[15], arrB[15], arrC[15]; // 分别为A、B、C
int length;
int lenA, lenB, lenC;
char plate[32];
// Make
void makeplate(int n)
{
int i;
if (n == length + 1)
{
for (i