java中06的动手动脑
Posted Z鳴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中06的动手动脑相关的知识,希望对你有一定的参考价值。
任务一:
代码:
package Shi;
import javax.swing.JOptionPane;
public class Shi6d1 {
public static void main(String[] args) {
int array[] = new int[10];
for(int m=0;m<10;m++)
{array[m] = (int)(Math.random()*100);}
String str="";
for(int m=0;m<10;m++)
{str=str+array[m]+" ";}
int b=0;
for(int m=0;m<10;m++)
{b=b+array[m];}
str=str+"的和为:"+b;
JOptionPane.showMessageDialog(null,str,"",JOptionPane.PLAIN_MESSAGE);
}
}
截图:
思路:
先定义一个长度为10的数组,然后通过for循环逐一随机赋值,然后定义一个int类型变量b求出数组中10个数的和,然后将数组中各个数加上空格赋值给一个String类型的str,在最后加上和,然后通过对话框输出。
程序流程图:
动手动脑:
棋盘:
代码:
package Shi;
import java.io.*;
public class QiPan
{
//定义一个二维数组来充当棋盘
private String[][] board;
//定义棋盘的大小
private static int BOARD_SIZE = 15;
public void initBoard()
{
//初始化棋盘数组
board = new String[BOARD_SIZE][BOARD_SIZE];
//把每个元素赋为"╋",用于在控制台画出棋盘
for (int i = 0 ; i < BOARD_SIZE ; i++)
{
for ( int j = 0 ; j < BOARD_SIZE ; j++)
{
board[i][j] = "╋";
}
}
}
//在控制台输出棋盘的方法
public void printBoard()
{
//打印每个数组元素
for (int i = 0 ; i < BOARD_SIZE ; i++)
{
for ( int j = 0 ; j < BOARD_SIZE ; j++)
{
//打印数组元素后不换行
System.out.print(board[i][j]);
}
//每打印完一行数组元素后输出一个换行符
System.out.print("\\n");
}
}
public static void main(String[] args)throws Exception
{
QiPan gb = new QiPan();
gb.initBoard();
gb.printBoard();
//这是用于获取键盘输入的方法
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String inputStr = null;
System.out.println("请输入您下棋的座标,应以x,y的格式:");
//br.readLine():每当在键盘上输入一行内容按回车,刚输入的内容将被br读取到。
while ((inputStr = br.readLine()) != null)
{
//将用户输入的字符串以逗号(,)作为分隔符,分隔成2个字符串
String[] posStrArr = inputStr.split(",");
//将2个字符串转换成用户下棋的座标
int xPos = Integer.parseInt(posStrArr[0]);
int yPos = Integer.parseInt(posStrArr[1]);
//把对应的数组元素赋为"●"。
gb.board[xPos - 1][yPos - 1] = "●";
/*
电脑随机生成2个整数,作为电脑下棋的座标,赋给board数组。
还涉及
1.座标的有效性,只能是数字,不能超出棋盘范围
2.如果下的棋的点,不能重复下棋。
3.每次下棋后,需要扫描谁赢了
*/
gb.printBoard();
System.out.println("请输入您下棋的座标,应以x,y的格式:");
}
}
}
截图:
数字转化大写:
代码:
package Shi;
import javax.swing.JOptionPane;
public class Shi6d2 {
public static void main(String[] args) {
String as=JOptionPane.showInputDialog("输入数字");
double number=Double.parseDouble(as);
number=number*100;
int n=0,num=(int)number; //分后全部舍弃
int array[]=new int[9];
for(int i=0;i<10;i++){
if(num==0)
break;
array[i]=num%10;
num=num/10;
n++;
}
String str[]={"分","角","元","拾","佰","千","万","十","佰"};
String str1[]={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
for(int i=n-1;i>=0;i--){
System.out.print(str1[array[i]]);
System.out.print(str[i]);}}}
截图:
大数:
代码:
加法
import javax.swing.*;
public class Big {
public static void main(String[] args) {
String num1=JOptionPane.showInputDialog("第一个数字");
String num2=JOptionPane.showInputDialog("第一个数字");
int nu1[]=new int[10];
int nu2[]=new int[10];
int nu3[]=new int[10];
int j=0;
for(int i=num1.length()-1;i>=0;i--){
nu1[j++]=num1.charAt(i)-\'0\';
}
j=0;
for(int i=num2.length()-1;i>=0;i--){
nu2[j++]=num2.charAt(i)-\'0\';
}
int next=0;
for(int i=0;i<nu1.length;i++){
nu3[i]=(nu1[i]+nu2[i]+next)%10;
next=(nu1[i]+nu2[i]+next)/10;
}
for(int i=nu3.length-1;i>=0;i--){
System.out.print(nu3[i]);
}
}
}
减法
package Array;
Import javax.swing.*;
public class Big {
public static void main(String[] args) {
String num1=JOptionPane.showInputDialog("第一个数字");
String num2=JOptionPane.showInputDialog("第一个数字");
int nu1[]=new int[10];
int nu2[]=new int[10];
int nu3[]=new int[10];
int j=0;
for(int i=num1.length()-1;i>=0;i--){
nu1[j++]=num1.charAt(i)-\'0\';
}
j=0;
for(int i=num2.length()-1;i>=0;i--){
nu2[j++]=num2.charAt(i)-\'0\';
}
//两数字比较大小
int flag=0;
for(int i=nu1.length-1;i>=0;i--){
if(nu1[i]>nu2[i]){
flag=1;break;//1表示1数字大
}
if(nu1[i]<nu2[i]){
flag=2;break;//2表示2数字大
}
}
int next=0;
if(flag==1){
for(int i=0;i<nu1.length;i++){
nu3[i]=nu1[i]-nu2[i]+next;
if(nu3[i]<0){
next=-1;
nu3[i]=nu3[i]+10;
}
else
next=0;
}
for(int i=nu3.length-1;i>=0;i--){
System.out.print(nu3[i]);
}}
if(flag==2){
for(int i=0;i<nu1.length;i++){
nu3[i]=nu2[i]-nu1[i]+next;
if(nu3[i]<0){
next=-1;
nu3[i]=nu3[i]+10;
}
else
next=0;
}
System.out.print("-");
for(int i=nu3.length-1;i>=0;i--){
System.out.print(nu3[i]);
}
if(flag==0){
System.out.println("0");
}}
}
}
以上是关于java中06的动手动脑的主要内容,如果未能解决你的问题,请参考以下文章