A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 奔跑的蚂蚁iOS 初级黑马   /  2016-2-16 22:43  /  1466 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

用户输入两个数,a和n。Sum=a+aa+aaa+aaaa+……+a…aaaa
如输入 a=2 ,n=5 ;
Sum=2 +22+222+2222+22222
各位大神帮帮忙,在线等

11 个回复

倒序浏览
你得意思是用for循坏实现这个功能不
回复 使用道具 举报
奔跑的蚂蚁iOS 来自手机 初级黑马 2016-2-16 22:56:18
藤椅
会飞得猪 发表于 2016-2-16 22:50
你得意思是用for循坏实现这个功能不

肯定要用循环吧,但具体用哪种循环也没做要求。
回复 使用道具 举报
虽然我不懂,但是我有源代码
回复 使用道具 举报
发过来看看
回复 使用道具 举报
在xcode中的编程
#include <stdio.h>

int main(int argc, const char * argv[]) {
//定义sum总和,m每循环一次单个的数
    int sum=0,m=0;
    int k=0;
    int a,n ;
    //提示用户输入两个数并以','隔开
    printf("请输入两个数以','隔开\n");
    //从键盘接收a n
    scanf("%d,%d",&a,&n);
    //双重循环求和
    for (int i=0; i<n; i++) {
        //求每一次循环的整十数
        for (int y=0; y<i+1; y++) {
            k=a*pow(10,y);
            
        }
        m=m+k;
        sum=sum+m;
    }
    //输出总和
    printf("sum=%d\n",sum);
   
    return 0;
}

点评

需要导入#include <math.h>头文件  发表于 2016-2-18 09:24
非常感谢,不过我们好像没学pow函数,开始有点没看懂!  发表于 2016-2-18 09:23
回复 使用道具 举报
chuanzhang 发表于 2016-2-17 21:49
在xcode中的编程
#include

非常感谢,不过我们好像没学pow函数,开始有点没看懂!
回复 使用道具 举报
纯手打,写了伪代码提供一下思路
//用来存放和
int sum = 0;
//用来存放当前循环所产生的数
int temp = 0;
int curNum = 0;
//这里的n是循环次数,放在题目中就是控制最大位数
for(int i = 0 ;i < n; i++){
temp = pow(10,i);//求出这次循环的最大千位数 比如2000
curNum = sum + curNum;//这是这是产生的完整的数,比如2222
sum = sum + curNum;//这是前面所有数的和,比如2+22+222+2222


楼主要明白一个数是如何产生的,它是由个十百千万……组成的

评分

参与人数 1技术分 +1 收起 理由
柳柳桑 + 1 赞一个!

查看全部评分

回复 使用道具 举报
一个疯子 发表于 2016-2-18 09:55
纯手打,写了伪代码提供一下思路
//用来存放和
int sum = 0;

这一个简单点,思路比较明确,谢谢
回复 使用道具 举报
本帖最后由 李岳珉 于 2016-2-18 10:43 编辑

import java.util.Scanner;  public class other {                  public static void main(String[] args) {                 
Scanner s1 = new Scanner(System.in);                 Scanner s2 = new Scanner(System.in);                 
long a = s1.nextInt();                 
long n = s2.nextInt();                 
long sum = 0;                 long temp = 0;                                 
for (int i = 1; i <=n; i++) {//加的数                                         
temp = temp*10+a;                                         
sum +=temp;                                         
System.out.println(temp);                                
}                                 
System.out.println(sum);                                 
System.out.println(temp);                 
}  }
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马