首頁 >Java >java教程 >Java中的鴨子數

Java中的鴨子數

王林
王林原創
2024-08-30 15:15:22503瀏覽

以下文章提供了 Java 中 Duck Number 的概述。 Duck Number 是包含零的數字,但零不能出現在數字的開頭。鴨子數是一個正的非零數,其中存在零。零存在於該數字的任何位置,除了數字的開頭。例如5103、70139、201407都是鴨子號碼,而0978、0355、08125則不是鴨子號碼。

開始您的免費軟體開發課程

網頁開發、程式語言、軟體測試及其他

文法

鴨子號的語法如下;有幾種方法可以檢查該號碼是否為鴨子號碼。讓我們看看下面的一種格式,

checkZero =n.charAt(i); //to check whether 0 present
char f=n.charAt(0); //takes first digit of the number
if(checkZero =='0'&& f!='0')
"Duck Number".
else
"Not Duck Number"

鴨數在 Java 中是如何運作的?

鴨子數是一個正非零數,其中存在零。零存在於該數字的任何位置,除了數字的開頭。讓我們來看看鴨子數字的例子,

例如:

4560 是一個鴨子數字,因為它有零,出現在數字的末尾,但零不存在於該數字的開頭

09889 不是鴨子號碼,因為它在號碼開頭包含零。

鴨子數 - 演算法

  • 先計算給定數字的長度,即輸入的數字。
  • 將checkZero變數值初始化為0,它代表輸入的數字中零位數的數量。使用for迴圈檢查直到條件滿足。
  • 輸入數字時每次檢查一位數字,檢查數字是否等於「0」。如果數字等於“0”,則將 checkZero 增加到 1。
  • 儲存輸入數字的第一位數字的值,以零開始
  • 檢查變數beginsZero是否不等於‘0’且checkZero是否大於0。
  • 如果兩個條件都成立,則顯示鴨子編號,否則顯示不是鴨子編號

範例程式碼

int length_=inputValue.length();
int checkZero=0;
char ch;
for(int i=1;i<1;i++)
{
checkZero =n.charAt(i); //to check whether 0 present
if(ch=='0')
checkZero++;
}
char f=n.charAt(0); //takes first digit of the number
if(checkZero>0 && f!='0')
system.out.println( "Duck Number");
else
system.out.println("Not Duck Number");

上面的程式碼依照上面的演算法來檢查或找出該數字是否為 Duck Number,主要是根據「0」的出現來找出該數字。如果數字中除了起始位置以外都包含零,則稱為鴨子數字。另一方面,如果數字在起始位置包含零或沒有出現零,則它不是鴨子數字。

Java 中的 Duck Number 範例

鴨號是一個包含零的數字,但零不能出現在數字的開頭。鴨子數是一個正的非零數,其中存在零。讓我們以程式設計方式查看範例,

範例#1

代碼:

import java.util.*;
import java.io.*;
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
System.out.println("Check Whether Entered Number is Duck Nnumber");
Scanner scan = new Scanner(System.in);
System.out.print("Enter Number : ");
String nstr = scan.nextLine();
int len = nstr.length();
int ctr = 0;
char checkZero;
for(int i=1;i<len;i++)
{
checkZero = nstr.charAt(i);
if(checkZero=='0')
ctr++;
}
char firstNumber = nstr.charAt(0);
if(ctr>0 && firstNumber!='0')
System.out.println("Duck number");
else
System.out.println("Not Duck Number");
}
}

在上面的程式中,首先,它從使用者那裡取得號碼,然後開始檢查該號碼的長度,並根據長度檢查是否出現零checkZero = nstr.charAt(i) 透過使用for循環直到條件滿足。然後檢查第一個位置 firstNumber!=’0′ 是否出現零,如果兩個條件都滿足,則顯示為 Duck Number;否則,這不是 Duck Number。

輸出:

Java中的鴨子數

範例#2

代碼:

import java.util.*;
import java.io.*;
import java.util.Scanner;
public class Main
{
static boolean To_Check_DNumber(String num)
{
// to check the '0' appearance
int i = 0,
numValue = num.length();
while (i < numValue && num.charAt(i) == '0')
i++;
// to check the remaining digits
while (i < numValue)
{
if (num.charAt(i) == '0') // return true, if there is no '0' present at beginning place
return true;
i++;
}
return false;
} // main method
public static void main(String args[]) throws IOException
{
String inputValue = "70885";
if (To_Check_DNumber(inputValue)) // if it returns true
System.out.println("Duck Number");
else
System.out.println("Not Duck Number");
}
}

在上面的程式中,它只是使用布林函數來檢查數字;在該函數本身中,我們檢查傳遞的數字是否是該程式本身的“鴨值”,我們根據返回true或false 的條件初始化該數字傳遞給bool 函數的input_value 。在主函數()中,我們只呼叫了布林函數To_Check_DNumber(inputValue); 如果條件為真,它會顯示「Duck Number」。

輸出:

Java中的鴨子數

範例 #3

代碼:

import java.util.*;
import java.io.*;
import java.util.Scanner;
public class Main
{
public static void main(String args[])
{
int rangeValue; // we can input the range value till that it checks whether the Duck_Numbers present
Scanner scan=new Scanner(System.in);
System.out.println("Enter Range_value: "); //here we need to enter the range value
rangeValue = scan.nextInt(); //to store entered value into variable
for(int i = 1; i <= rangeValue; i++)
if(check_Number(i))
{
System.out.println(i + " Duck number");
}
} // to create function call - checkNumber() which returns true if is Duck_Number
public static boolean check_Number(int getNumber)
{
while(getNumber != 0) // repeat loop until it satisfies condition
{
if(getNumber%10 == 0) // to check whether the number contains zero
return true; // if the number contains 'zero' in it then it returns true - and the Number is Duck
getNumber = getNumber / 10;
}
return false; //return false if the particular number is Not Duck Number
}
}

在這個程式中,我們可以輸入範圍值,直到它檢查 Duck_Numbers 是否存在。

輸出:

Java中的鴨子數

結論

在這篇文章中,我們了解如何在 Java 中找到 Duck 數,這是基於零的可用性。所以我們希望這篇文章能幫助您檢查該號碼是否為鴨子號碼。

以上是Java中的鴨子數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn