java编程很简单的
(1)编写一个应用程序,要求将一个浮点数强制转化成整型后输出;(2)请计算出3~1000范围内最大的10个素数,放入数组中,并计算出其累加和;(3)水仙花数是3位数,它的...
(1)编写一个应用程序,要求将一个浮点数强制转化成整型后输出;
(2)请计算出3~1000范围内最大的10个素数,放入数组中,并计算出其累加和;
(3)水仙花数是3位数,它的各位数的立方和等于这个3位数本身,例如:371=3^3+7^3+1^3,371就是一个水仙花数。找出所有水仙花数;
(4)找出一个二维数组的鞍点,即该位置上的元素在该行最大、在列上最小(也可能没有鞍点)。
十分感谢,要每题代码。 展开
(2)请计算出3~1000范围内最大的10个素数,放入数组中,并计算出其累加和;
(3)水仙花数是3位数,它的各位数的立方和等于这个3位数本身,例如:371=3^3+7^3+1^3,371就是一个水仙花数。找出所有水仙花数;
(4)找出一个二维数组的鞍点,即该位置上的元素在该行最大、在列上最小(也可能没有鞍点)。
十分感谢,要每题代码。 展开
3个回答
展开全部
(1)编写一个应用程序,要求将一个浮点数强制转化成整型后输出;
解答:
import java.util.Scanner;
public class Answer1 {
public static void main(String []args)
{
//(1) 强制转换
Scanner reader=new Scanner(System.in);
System.out.print("请输入一个浮点数: ");
float f=reader.nextFloat();
//强制转换成整数
int d=(int)f;
System.out.printf("强制转换后等于: %d", d);
}
}
2)请计算出3~1000范围内最大的10个素数,放入数组中,并计算出其累加和;
解答:
import java.util.Scanner;
public class Answer2 {
public static void main(String []args)
{
//求1000以内的所有素数
int[] ss=new int[10];
int sum=0;
int n=1000;
int t=2;
int m;
int count=0;//记录素数的个数
for(m=n-1;m>2;m--)
{
while(m%t!=0)
{
if(t<m/2)
t++;
else
{
if(count+1<=10)
{
ss[count]=m;
}
if(count%10==0)
System.out.println();
System.out.printf("%5d ", m);
count++;
break;
}
}
t=2;
}
System.out.printf("%5d\n\n",2);
System.out.println("1000以内的素数有"+(count+1)+"个");
System.out.println("最大的十个素数为");
for(int i:ss)
{
System.out.print(i+" ");
sum+=i;
}
System.out.println("\n最大的十个素数之和为"+sum);
}
}
(3)水仙花数是3位数,它的各位数的立方和等于这个3位数本身,例如:371=3^3+7^3+1^3,371就是一个水仙花数。找出所有水仙花数;
解答:
import java.util.Scanner;
public class Answer3 {
public static void main(String []args)
{
//水仙花数
int ge;
int shi;
int bai;
int sum=0;
for(bai=1;bai<10;bai++)
for(shi=0;shi<10;shi++)
for(ge=0;ge<10;ge++)
if(bai*100+shi*10+ge==(int)
(Math.pow(bai, 3)+Math.pow(shi, 3)+Math.pow(ge, 3)))
{
System.out.println(bai*100+shi*10+ge);
sum++;
}
System.out.println("共有"+sum+"个");
}
}
4)找出一个二维数组的鞍点,即该位置上的元素在该行最大、在列上最小(也可能没有鞍点)。
解答:
import java.util.Scanner;
public class Answer4 {
public static void main(String []args)
{
int n=0;
int m=0;
Scanner reader=new Scanner(System.in);
System.out.println("请输入数组的行数:");
m=reader.nextInt();
System.out.println("请输入数组的列数:");
n=reader.nextInt();
int[][] array=new int[m][n];
System.out.println("请输入数组的元素:");
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
{
array[i][j]=reader.nextInt();
}
int[] maxArray=new int[m];
int[] minArray=new int[n];
int max=0,min=0;
for(int i=0;i<m;i++)
{
max=array[i][0];
for(int j=0;j<n;j++)
{
if(array[i][j]>max)
{
max=array[i][j];
maxArray[i]=j;
}
}
}
for(int j=0;j<n;j++)
{
min=array[0][j];
for(int i=0;i<m;i++)
{
if(array[i][j]<min)
{
min=array[i][j];
minArray[j]=i;
}
}
}
for(int i=0;i<m;i++)
{
if(array[i][maxArray[i]]==array[minArray[maxArray[i]]][maxArray[i]])
{
System.out.println("鞍点是:");
System.out.println("["+i+","+maxArray[i]+"]"+":"+array[i][maxArray[i]]);
}
}
}
}
解答:
import java.util.Scanner;
public class Answer1 {
public static void main(String []args)
{
//(1) 强制转换
Scanner reader=new Scanner(System.in);
System.out.print("请输入一个浮点数: ");
float f=reader.nextFloat();
//强制转换成整数
int d=(int)f;
System.out.printf("强制转换后等于: %d", d);
}
}
2)请计算出3~1000范围内最大的10个素数,放入数组中,并计算出其累加和;
解答:
import java.util.Scanner;
public class Answer2 {
public static void main(String []args)
{
//求1000以内的所有素数
int[] ss=new int[10];
int sum=0;
int n=1000;
int t=2;
int m;
int count=0;//记录素数的个数
for(m=n-1;m>2;m--)
{
while(m%t!=0)
{
if(t<m/2)
t++;
else
{
if(count+1<=10)
{
ss[count]=m;
}
if(count%10==0)
System.out.println();
System.out.printf("%5d ", m);
count++;
break;
}
}
t=2;
}
System.out.printf("%5d\n\n",2);
System.out.println("1000以内的素数有"+(count+1)+"个");
System.out.println("最大的十个素数为");
for(int i:ss)
{
System.out.print(i+" ");
sum+=i;
}
System.out.println("\n最大的十个素数之和为"+sum);
}
}
(3)水仙花数是3位数,它的各位数的立方和等于这个3位数本身,例如:371=3^3+7^3+1^3,371就是一个水仙花数。找出所有水仙花数;
解答:
import java.util.Scanner;
public class Answer3 {
public static void main(String []args)
{
//水仙花数
int ge;
int shi;
int bai;
int sum=0;
for(bai=1;bai<10;bai++)
for(shi=0;shi<10;shi++)
for(ge=0;ge<10;ge++)
if(bai*100+shi*10+ge==(int)
(Math.pow(bai, 3)+Math.pow(shi, 3)+Math.pow(ge, 3)))
{
System.out.println(bai*100+shi*10+ge);
sum++;
}
System.out.println("共有"+sum+"个");
}
}
4)找出一个二维数组的鞍点,即该位置上的元素在该行最大、在列上最小(也可能没有鞍点)。
解答:
import java.util.Scanner;
public class Answer4 {
public static void main(String []args)
{
int n=0;
int m=0;
Scanner reader=new Scanner(System.in);
System.out.println("请输入数组的行数:");
m=reader.nextInt();
System.out.println("请输入数组的列数:");
n=reader.nextInt();
int[][] array=new int[m][n];
System.out.println("请输入数组的元素:");
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
{
array[i][j]=reader.nextInt();
}
int[] maxArray=new int[m];
int[] minArray=new int[n];
int max=0,min=0;
for(int i=0;i<m;i++)
{
max=array[i][0];
for(int j=0;j<n;j++)
{
if(array[i][j]>max)
{
max=array[i][j];
maxArray[i]=j;
}
}
}
for(int j=0;j<n;j++)
{
min=array[0][j];
for(int i=0;i<m;i++)
{
if(array[i][j]<min)
{
min=array[i][j];
minArray[j]=i;
}
}
}
for(int i=0;i<m;i++)
{
if(array[i][maxArray[i]]==array[minArray[maxArray[i]]][maxArray[i]])
{
System.out.println("鞍点是:");
System.out.println("["+i+","+maxArray[i]+"]"+":"+array[i][maxArray[i]]);
}
}
}
}
展开全部
1)
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author gang-liu
*/
public class Casting {
public int cast(final double in){
int result = (int)in;
System.out.println("Casting from "+in+" to "+result);
return result;
}
public static void main(String[] args){
Casting c = new Casting();
int a = c.cast(1.23d);
}
}
2)
import java.util.ArrayDeque;
import java.util.Queue;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author gang-liu
*/
public class PrimeSum {
private Queue queue;
public PrimeSum() {
queue = new ArrayDeque();
}
public long getPrimeSum(final int min, final int max) {
Queue<Integer> queue = new ArrayDeque<Integer>();
for (int i = min; i <= max; i++) {
if (isPrime(i)) {
queue.add(i);
}
if (queue.size() > 10) {
queue.remove();
}
}
long ret = 0;
for (Integer ele : queue) {
ret += ele.intValue();
}
return ret;
}
private boolean isPrime(final int target) {
for (int i = 2; i < target; i++) {
if ((target % i) == 0) {
return false;
}
}
return true;
}
public static void main(String[] args) {
PrimeSum ps = new PrimeSum();
System.out.println(ps.getPrimeSum(3, 1000));
}
}
3)
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author gang-liu
*/
public class Narcissus {
public void isCapacinal(final int max) {
for(int i=1; i<=max; i++){
if(isValide(i)){
System.out.println(i);
}
}
}
private boolean isValide(final int num) {
final String numRep = String.valueOf(num);
int sum = 0;
for (int index = 0; index < numRep.toCharArray().length; index++) {
final int digit = Integer.parseInt(Character.toString(numRep.charAt(
index)));
sum += (int)Math.pow(digit, 3);
}
return (sum == num);
}
}
4)
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author gang-liu
*/
public class Peak {
public void printPeaks(int[][] target) {
int rowIndex = 0;
for (int[] row : target) {
int rowMax = Integer.MIN_VALUE;
int colIndex = 0;
for (int i = 0; i < row.length; i++) {
if (row[i] > rowMax) {
rowMax = row[i];
colIndex = i;
}
}
if (isMinInColumn(target, rowIndex, rowMax, colIndex)) {
System.out.println("Peak = " + target[rowIndex][colIndex]
+ " at row " + rowIndex + " column " + colIndex);
}
rowIndex++;
}
}
private boolean isMinInColumn(final int[][] target, final int rowIndex,
final int value, final int colIndex) {
for (int[] row : target) {
final int ele = row[colIndex];
if(ele > value){
return false;
}
}
return true;
}
public static void main(String[] args){
int[][] target = {
{1,2,3,4,5,6,7},
{7,6,5,4,3,2,1}
};
Peak p = new Peak();
p.printPeaks(target);
}
}
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author gang-liu
*/
public class Casting {
public int cast(final double in){
int result = (int)in;
System.out.println("Casting from "+in+" to "+result);
return result;
}
public static void main(String[] args){
Casting c = new Casting();
int a = c.cast(1.23d);
}
}
2)
import java.util.ArrayDeque;
import java.util.Queue;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author gang-liu
*/
public class PrimeSum {
private Queue queue;
public PrimeSum() {
queue = new ArrayDeque();
}
public long getPrimeSum(final int min, final int max) {
Queue<Integer> queue = new ArrayDeque<Integer>();
for (int i = min; i <= max; i++) {
if (isPrime(i)) {
queue.add(i);
}
if (queue.size() > 10) {
queue.remove();
}
}
long ret = 0;
for (Integer ele : queue) {
ret += ele.intValue();
}
return ret;
}
private boolean isPrime(final int target) {
for (int i = 2; i < target; i++) {
if ((target % i) == 0) {
return false;
}
}
return true;
}
public static void main(String[] args) {
PrimeSum ps = new PrimeSum();
System.out.println(ps.getPrimeSum(3, 1000));
}
}
3)
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author gang-liu
*/
public class Narcissus {
public void isCapacinal(final int max) {
for(int i=1; i<=max; i++){
if(isValide(i)){
System.out.println(i);
}
}
}
private boolean isValide(final int num) {
final String numRep = String.valueOf(num);
int sum = 0;
for (int index = 0; index < numRep.toCharArray().length; index++) {
final int digit = Integer.parseInt(Character.toString(numRep.charAt(
index)));
sum += (int)Math.pow(digit, 3);
}
return (sum == num);
}
}
4)
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author gang-liu
*/
public class Peak {
public void printPeaks(int[][] target) {
int rowIndex = 0;
for (int[] row : target) {
int rowMax = Integer.MIN_VALUE;
int colIndex = 0;
for (int i = 0; i < row.length; i++) {
if (row[i] > rowMax) {
rowMax = row[i];
colIndex = i;
}
}
if (isMinInColumn(target, rowIndex, rowMax, colIndex)) {
System.out.println("Peak = " + target[rowIndex][colIndex]
+ " at row " + rowIndex + " column " + colIndex);
}
rowIndex++;
}
}
private boolean isMinInColumn(final int[][] target, final int rowIndex,
final int value, final int colIndex) {
for (int[] row : target) {
final int ele = row[colIndex];
if(ele > value){
return false;
}
}
return true;
}
public static void main(String[] args){
int[][] target = {
{1,2,3,4,5,6,7},
{7,6,5,4,3,2,1}
};
Peak p = new Peak();
p.printPeaks(target);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
都不难,自己到网上一个一个搜一下吧!
其实网上都有现成的东西!
懒也有懒的方法,不一定什么都要给你提供现在的代码!
其实网上都有现成的东西!
懒也有懒的方法,不一定什么都要给你提供现在的代码!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询