求算法设计与分析的小程序

求算法设计与分析的小程序,第1张

visual studio下的工程,所以有个预编译头stdafx,然后没考虑异常。。

stdafx应该是去掉就可以吧,我不太清楚,反正这个根据vc++的情况稍作改动就可以了,其他算法之类是不受影响的

---------------------------------------------------------

输入两个数,当中要有一个空格。不过C/C++实在写的太少,貌似读入那里写的太麻烦了。。但是又不知道一般会怎么写。。然后,异常依旧未考虑。。

#include "stdafx.h"

#include "stdio.h"

double result = 10e250

int *plusPositions

int plusCount

double atod(int *digits, int length)

{

double number = 0

for (int i = 0i <length++i) {

number = number * 10 + digits[i]

}

return number

}

void solve(int *digits, int length, int index, double currentSum,

int plusesRemain, int *tempPlusPositions)

{

if (plusesRemain == 0) {

double tempResult = currentSum + atod(digits, length)

if (tempResult <result) {

memcpy(plusPositions, tempPlusPositions, sizeof(int) * plusCount)

result = tempResult

}

} else {

for (int i = 1i <length - plusesRemain + 1++i) {

tempPlusPositions[plusesRemain - 1] = index + i

solve(digits + i, length - i, index + i,

currentSum + atod(digits, i), plusesRemain - 1,

tempPlusPositions)

}

}

}

inline void printResult(int *digits, int length)

{

int digitIndex = 0, plusIndex

for (plusIndex = plusCount - 1plusIndex >= 0--plusIndex) {

for ( digitIndex <plusPositions[plusIndex]++digitIndex) {

printf("%d", digits[digitIndex])

}

printf(" + ")

}

for ( digitIndex <length++digitIndex) {

printf("%d", digits[digitIndex])

}

printf(" = %d\n", (int) result)

}

void solve(int *digits, int length, int pluses)

{

plusCount = pluses

plusPositions = new int[pluses]

int *tempPlusPositions = new int[pluses]

solve(digits, length, 0, 0, pluses, tempPlusPositions)

printResult(digits, length)

delete [] tempPlusPositions

delete [] plusPositions

}

int _tmain(int argc, _TCHAR* argv[])

{

char string[200]

int digits[200], plus

scanf("%s %d", &string, &plus)

int i

char c

for (i = 0i <200++i) {

c = string[i]

if (c == '\0')

break

digits[i] = c - '0'

}

solve(digits, i, plus)

return 0

}

一款趣味测评答题小程序,目前1.0版本已上线,功能只有基础的答题分享功能。

在2.0版本将增加社区功能,实现用户交流互动,欢迎各位同学提供好的建议和意见,一起打造一款优秀的小程序产品

随着科学进步的发展,小学生掌握编程思维也是非常重要。今天就跟大家分享几款适合小学生学习的编程软件

一、Scratch,它是属于一款图形化编程软件,孩子很快就能学会 *** 作,而且软件里面的可玩性也非常高。

二、Codea,这款编程软件主要是依靠游戏的方式来训练孩子的编程思维,相信您的孩子一定会喜欢。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8109615.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存