课堂测试——数据位数、位数输出、各位数上数据求和

2016.10.18Java课堂测试

在课堂上写的时候,写到各位书身上数据输出时、因为处理不好取最高位的步骤所以不能继续进行编程。

经过后期查找之后:

引用import static java.lang.Math.*;

  求x的y次方运算,Math.pow(x,y);

  求整数部分,Math.floor();//这里运行之后发现是double类型所以又用了强制转换。

将Int转换为Double类型,int number1=(int) number2;

另外的问题就是:

因为数据上存在多次变化使用,所以我将数据赋予一个新的变量,自觉很烦,不喜欢。

//陶雨洁 课堂测试 位数 20153152
package tyj;
import java.util.Scanner;
import static java.lang.Math.*;
public class Tyj20153152 {
public static void main(String[] args){
    System.out.println("输入任意整数");

    Scanner sc=new Scanner(System.in);
      int a=sc.nextInt();
      System.out.println("位数"+pdWS(a));//位数输出
      qS(a);//取数
      qH(a);//位数上数据求和
}

public static int pdWS(int a){
    int j=1;//位数计数
    for(;a/10!=0;a=a/10){
          j++;
      }
    return j;
}

public static void qS(int a){
    int b=a;//a用作计量位数
    int j=1;//位数计数
    for(;a/10!=0;a=a/10){
          j++;
      }
    int c=j;//j用作记录循环次数
    for(int n=0;n<j;n++){
        int m=(int)Math.floor( b/Math.pow(10,c-1));
        System.out.println(m);//Math.pow是10的j次方运算
        b=(int) (b-m*Math.pow(10,c-1));
        c--;
    }
}

public static void qH(int a){
    int b=a;//a用作计量位数
    int j=1;//位数计数
    int sum=0;//求和嘛
    for(;a/10!=0;a=a/10){
          j++;
      }
    int c=j;//j用作记录循环次数
    for(int n=0;n<j;n++){
        int m=(int)Math.floor( b/Math.pow(10,c-1));
        sum=sum+m;
        b=(int) (b-m*Math.pow(10,c-1));
        c--;
    }
    System.out.println("输出数据每位数上的和为"+sum);
}

}

运算结果:

时间: 10-18

课堂测试——数据位数、位数输出、各位数上数据求和的相关文章

light_oj 1282 求n^k的前几位数和后几位数

light_oj 1282 求n^k的前几位数和后几位数 E - Leading and Trailing Time Limit:2000MS     Memory Limit:32768KB     64bit IO Format:%lld & %llu Submit Status Practice LightOJ 1282 Description You are given two integers: n and k, your task is to find the most signif

课堂测试1 登录界面

1.网站系统开发需要什么技术 前台photoshop(美工必学的)+dreaweaver(css+div)+javacript,后台php .net  asp 等编程语言,要想做好网站HTML.JAVASCRIPT.CSS.数据库.服务器配置必须要学会. 在网上查了一下,要做好一个网站系统,要学习的技术有很多,简单列举一下: (1)java Java语言体系比较庞大,包括多个模块.从WEB项目应用角度讲有JSP.Servlet.JDBC.JavaBean(Application)四部分技术. (

c语言:建立简单的静态链表,它由3个学生数据的结点组成,要求输出各结点的数据

建立简单的静态链表,它由3个学生数据的结点组成,要求输出各结点的数据. 解:将第1个结点的起始地址赋给头指针head,将第2个结点的起始地址赋给第1个结点的next成员,将第3个结点的起始地址赋给第2个结点的next成员.第3个结点的next成员赋予NULL,这就形成了链表.为了建立链表,使head指向a结点,a.next指向b结点,b.next指向c结点,c.next=NULL的作用是使c.next不指向任何有用的存储单元. 程序: #include<stdio.h> struct Stud

数据的交换输出【杭电-2016】 附题

/* 数据的交换输出 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 54495    Accepted Submission(s): 20688 Problem Description 输入n(n<100)个数.找出当中最小的数,将它与最前面的数交换后输出这些数. Input 输入数据有多组,每组占一行,每行的開始是一个整数n,表示这

键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值

package cn; import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; /**  * 键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值  * 分析:  *  1.创建键盘录入对象  *  2.键盘录入多个数据,我们不知道有多少个,所以用集合存储  *  3.以0结束,只要键盘录入的数据是0,就退出循环  *      4.把集合转换成数组  *      5.对数组进行排

hdu 2016 数据的交换输出

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2016 题目大意:把最小的和第一个交换并输出.注意格式哦! 1 #include <stdio.h> 2 int main () 3 { 4 int n,a[110],i,j,t,min; 5 while (scanf("%d",&n)!=EOF) 6 { 7 if (n==0) 8 break; 9 for (i=0; i<n; i++) 10 { 11 scan

输出NSRange类型的数据

如果你想知道字符串内的某处是否包含其他字符串,使用rangeOfString: 方法 -(NSRange)rangeOfString :(NSString *)aString; 1 NSString *num = @"sdhfdsjkljg"; 2 3 NSRange a =[num rangeOfString:@"hf"]; 4 NSLog(@"%@",NSStringFromRange(a)); 5 //输出{2, 2} NSStringFr

Java基础知识强化之集合框架笔记36:List练习之键盘录入多个数据在控制台输出最大值

1. 键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值 分析: •  创建键盘录入数据对象 •  键盘录入多个数据,我们不知道多少个,所以用集合存储 •  以0结束,这个简单,只要键盘录入的数据是0,我就不继续录入数据了 •  把集合转成数组 •  对数组排序 •  获取该数组中的最大索引的值 2. 代码实现: 1 1. package cn.itcast_03; 2 3 import java.util.ArrayList; 4 import java.util.Arrays;

18.把1~100存到一维数组a[100]中,并输出。要求每行输出10个,数据所占宽度相同。

#include<iostream>using namespace std; int main(){    int a[101];    for(int i=1;i<=100;i++)    {        a[i]=i;    }    for(int j=1;j<=100;j++)    {        cout<<a[j]<<" ";        if(j%10==0)//简单的换行都会想那么久        {       

untiy数据包的输出、加载和卸载

1:untiy数据包的输出: BuildPipeline.BuildAssetBundle将任意类型的资源打包成AssetsBundle文件. BuildPipeline.BuildAssetBundleExplocitAssetNames同上,但是可以为每个对象制定一个自定义的名字,方便查找. BuildPipeline.BuildStreamedSceneAssetBundle直接将一个或多个场景打包成AssetsBundle文件. 2:untiy将数据包加载到AssetBundle: WW