(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 ;
int sum=0;
for(=1;<10;++)
for(shi=0;shi<10;shi++)
for(ge=0;ge<10;ge++)
if(*100+shi*10+ge==(int)
(Math.pow(, 3)+Math.pow(shi, 3)+Math.pow(ge, 3)))
{
System.out.println(*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]]);
}
}
}
}
㈡ java編程找出1000以內3的倍數
publicclassTest{
publicstaticvoidmain(String[]args){
finalintSTART_NUM=1;
finalintEND_NUM=1000;
finalintMOD_NUM=3;
for(inti=START_NUM;i<=END_NUM;i++){
if(i%MOD_NUM==0){
System.out.print(i+" ");
}
}
}
}
%就是取模的意思,3的倍數特性就是對3取模等於0
㈢ java編程
public class MyArray {
public int[] data;
public MyArray(){
data = new int[10];
}
public MyArray(int n){
data = new int[n];
for(int i=0;i<n;i++){
data[i] = (int)(Math.random()*1000);
}
}
public MyArray(int[] data){
this.data = data;
}
public void output(){
for(int i=0;i<data.length;i++){
System.out.println(data[i]);
}
}
public void sort(){
for(int i=0;i<data.length;i++){
for(int j=i+1;j<data.length;j++){
if(data[j]>data[i]){
int temp = data[i];
data[i] = data[j];
data[j] = temp;
}
}
}
}
}
㈣ JAVA編程題:找出1000以內的完數:一個數如果恰好等於它的因子之和,這個數就稱為 "完數 "。例如6=1+2+3.
include <iostream>
using namespace std;
int main() {
for (int i = 2; i <= 1000; i++) {//從2到1000的數
int sum = 0;//因子總和
for (int j = 1; (j * j) <= i; j++) {//j做除數,√n復雜度,減少一半的計算量
if (i % j == 0) {//可以整除,為其因子
sum = j + (i / j) + sum;//因子之和
}
}
if ((sum - i) == i) cout << "1000以內的完數:" << i << endl;//因子之和減去其本身(1*i也為其因子)如果等於這個數本身,則為完數
}
}
在數學領域,6是第一個完全數,也是最小的完全數。所謂完全數(又稱完美數或完備數),是一種特殊的自然數;它所有的真因子(即除了自身以外的約數)的和,恰好等於它本身。
例如6有約數1、2、3、6,除去它本身6外,其餘3個數相加,1+2+3=6;第二個完全數是28,它有約數1、2、4、7、14、28,除去它本身28外,其餘5個數相加,1+2+4+7+14=28。公元前6世紀的古希臘數學家、哲學家畢達哥拉斯是最早探究完全數的人,他已經知道6和28這兩個自然數是完全數了。
㈤ java編程 1到1000的水仙花數 求教
所謂"水仙花數"是指一個三位數,其各位數字立方和等於該數本身。例如:153是一個"水仙花數",因為153=1的三次方+5的三次方+3的三次方。代碼如下
publicclassShuixianhua{
/**
*判斷數字是否是水仙花數
*@Title:shuixianhua
*@param:@paramx
*@param:@return
*@return:boolean
*@Description:
*@date2017年11月2日下午3:03:10
*@throws
*/
publicbooleanshuixianhua(intx)
{
inti=0,j=0,k=0;
i=x/100;
j=(x%100)/10;
k=x%10;
if(x==i*i*i+j*j*j+k*k*k)
returntrue;
else
returnfalse;
}
publicstaticvoidmain(String[]args){
//存放所有水仙花數的集合
List<Integer>sxhList=newArrayList<Integer>();
Shuixianhuasxh=newShuixianhua();
for(inti=1;i<=1000;i++){
//判斷是否是水仙花數,是則放入集合
if(sxh.shuixianhua(i)){
sxhList.add(i);
}
}
//列印所有水仙花數
System.out.println(sxhList.toString());
}
}
㈥ java經典編程案例有哪些
java編程的記事本:
import java.util.*;
public class JieChengExample
{
public static void main(String args[])
{
Scanner input=new Scanner(System.in);
int n,sum;
Jiecheng jie=new Jiecheng();
System.out.print("輸入n的值:");//輸入有幾個階乘相加
n=input.nextInt();
sum=0;
for(int i=1;i<=n;i++)
{
sum=sum+jie.jiecheng(i);//這是n個階乘相加
}
System.out.println("1!+2!+3!+....+n!的和是:"+sum);
}
}
class Jiecheng
{
public int jiecheng(int temp)//算階乘的方法
{
int sum=1;
for(int i=1;i<=temp;i++)
{
sum=sum*i; //計算階乘
}
return sum;//將一個階乘返回
}
}
2.java賽馬游戲:
import java.util.Random;
public class Test {
public static void main(String[] args) {
Competition c = new Competition();
Thread T = new Thread(c);
T.start();
}
}
class Competition implements Runnable{
int red = 0;
int green = 0;
int Speed [] = new int [2];
Competition(){
}
public void run(){
Random r = new Random();
for(int a= 0;a<500;a++){
for(int j = 0;j<2;j++){
Speed[j] = r.nextInt(2);
red = red + Speed[j];
Speed[j] = r.nextInt(2);
green = green + Speed[j];
}
System.out.println("red的速度為"+red);
System.out.println("green的速度為"+green);
while(red >=500 || green>=500){
if(red >=500){
System.out.println("red先抵達終點線");
}
if(green >= 500){
System.out.println("green先抵達終點線");
}
if(green ==500 && red ==500 ){
System.out.println("兩個同時到達");
}
return;
}
}
/* if(red >green){
System.out.println("Redwin"+red);
}
if(red<green){
S...import java.util.Random;
public class Test {
public static void main(String[] args) {
Competition c = new Competition();
Thread T = new Thread(c);
T.start();
}
}
class Competition implements Runnable{
int red = 0;
int green = 0;
int Speed [] = new int [2];
Competition(){
}
public void run(){
Random r = new Random();
for(int a= 0;a<500;a++){
for(int j = 0;j<2;j++){
Speed[j] = r.nextInt(2);
red = red + Speed[j];
Speed[j] = r.nextInt(2);
green = green + Speed[j];
}
System.out.println("red的速度為"+red);
System.out.println("green的速度為"+green);
while(red >=500 || green>=500){
if(red >=500){
System.out.println("red先抵達終點線");
}
if(green >= 500){
System.out.println("green先抵達終點線");
}
if(green ==500 && red ==500 ){
System.out.println("兩個同時到達");
}
return;
}
}
/* if(red >green){
System.out.println("Redwin"+red);
}
if(red<green){
System.out.println("Greenwin"+green);
}
if(red == green){
System.out.println("equal");*/
JAVA的介紹:
Java是一種可以撰寫跨平台應用程序的面向對象的程序設計語言。Java技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
㈦ java編程實例
我是Java初學者,我看了你的問題後想了很久終於把它做出來了,你看看吧,方法不是很好,但能滿足你的要求:
import java.util.Scanner;
public class Check2{
int t;
char[] chs = new char[500]; //輸入的句子不能超過500個字元
Check2() {
String str;
Scanner sc = new Scanner(System.in);
System.out.println("請輸入字元串(輸入的字元串不能超過500個字元):");
str = sc.nextLine();
t=str.length();
for (int i = 0; i < t; i ++) {
chs[i] = str.charAt(i); //將輸入的字元串裝入數組
}
}
}
class FuZhi{
char[] letter=new char[52]; //將52個字母(含大小寫)裝入數組
FuZhi(){
char p;
int i=0,j=26;
for(p='A';p<='Z';p++){
letter[i]=p; //這句剛才寫掉了,加上去後程序就完整了
i++; //將A-Z裝入數組
}
for(p='a';p<='z';p++){
letter[j]=p; //將a-z裝入數組,並且從數組的第26個開始裝入(letter[0]-letter[25]已被裝入了字母)
j++;
}
}
}
class display{
public static void main(String[] args){
char temp;
int t;
int[] n= new int [52]; //用於統計每個字元出現的次數
Check2 k =new Check2();
FuZhi m=new FuZhi();
for(int j=0;j<52;j++){
t=0; //令t為0,,並且使上一個字母統計完成後
//將其再次初始化(如A統計完成後,當程序統計B出現的次數時,使B的初始次數為0)
for(int i=0;i<k.t;i++){
if(m.letter[j]==k.chs[i]){ //比較字元是否相同,如相同,使t自加一
t++;
n[j]=t; //數組n來統計每個字母出現的次數,即其中的每一個元素代表一個字母在程序中出現的次數
}
}
}
System.out.println("總共輸入了"+k.t+"個字元:\n"+"其中");
for(int i=0;i<52;i++){
System.out.println("字母"+m.letter[i]+"出現的次數為:"+n[i]+"次");
}
}
}
寫掉了一句「letter[i]=p;」,現在已經補上了,程序可以運行了,你試一下吧!!!
㈧ 編寫一個java程序,用1000個元素的數組確定和顯示2~999之間的質數
boolean[]
b=new
boolean[1000];//把1也算了進去
for(boolean
h:b){h=true;}
for(int
i=2;i<1000;i=i+1){
if(int
i1=1;i1<=1000;i1=i1+1){
if(i1%i==0&&i1/i>1){//除去1
如
13/13=0
但
13/13=1
不會出現
13/1
因為i從2算起
b[i1-1]=false;
}
}
}
㈨ 簡單java編程題
水仙花數共有4個,分別為:153、370、371、407
( 例如:1^3 + 5^3 + 3^3 = 153 )
php「水仙花數」實現代碼:
<?php
for($i=100;i$<1000;$i++)
{
$a = intval($i/100);
$b = intval($i/10)%10;
$c = $i%10;
if(pow($a,3)+pow($b,3))+pow($c,3) == $i)
{
echo $x.'</br>';
}
}
?>
C語言的"水仙花數"實現代碼:
#include <stdio.h>
int main(void)
{
int a,b,c;
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
printf("%d%d%d\n",a,b,c);
return 0;
}
PASCAL實現代碼:
program shuixianhuashu;
var
a,b,c:integer;
begin
for a:=1 to 9 do
for b:=0 to 9 do
for c:=0 to 9 do
if a*a*a+b*b*b+c*c*c=100*a+10*b+c then writeln(100*a+10*b+c);
end.
Visual Basic的"水仙花數"實現代碼:
Private Sub Form_Click()
Dim a, b, c As Integer 'a(個)b(十)c(百)
For a = 0 To 9
For b = 0 To 9
For c = 1 To 9
If a ^ 3 + b ^ 3 + c ^ 3 = a + 10 * b + 100 * c Then
MsgBox 100 * c + 10 * b + a
End If
Next c
Next b
Next a
End Sub
FORTRAN的"水仙花數"實現代碼:
WRITE(*,30)
DO 10 K=100,999
IA=K/100
IB=MOD(K,100)/10
IC=MOD(K,10)
IF(K.NE.IA**3+IB**3+IC**3) GOTO 10
WRITE(*,20)K, IA,IB,IC
10 CONTINUE
20 FORMAT(5X,4I4)
30 FORMAT(5X,18HN=I**3+J**3+K**3)
STOP
END
C++編譯器上的水仙花數實現代碼
#include<iostream>
using namespace std;
void main()
{
int a=100;
int q,w,e;
for(a;a<1000;++a)
{
q=a/100;
w=(a-q*100)/10;
e=(a-q*100-w*10);
if(a==q*q*q+w*w*w+e*e*e)
cout<<a<<"是水仙花數"<<endl;}
}
pyhon 中實現的代碼
for i in range(1,10):
for j in range(0,10):
for k in range(0,10):
if i*100+j*10+k==i*i*i+j*j*j+k*k*k:
print i*100+j*10+k,
Java 中實現的代碼
public class shuixianhua
{
public static void main(String[] args){
for(int i=1; i<=9; i++)
for(int j=0; j<=9; j++)
for(int k=0; k<=9; k++)
if(i*i*i+j*j*j+k*k*k == 100*i+10*j+k)
System.out.print(i*100+j*10+k+" ");
}
}
...說實話.我也不懂這個.只是.幫你找了好多資料.這個瞧著還像那麼回事.不過 不知道可不可以幫到你.