Java 程式檢查字串是否為 pangram
Pangram 是一個包含英語字母表中所有字母的字串。例如,“The quick brown fox jumps over the lazy dog”。
問題陳述
給定一個字串,編寫一個 Java 程式來檢查它是否為 pangram。
請考慮以下示例 -
輸入The quick brown fox jumps over the lazy dog.輸出
String: The quick brown fox jumps over the lazy dog. The above string is a pangram.
演算法
以下演算法側重於檢查字串是否為 pangram。
步驟 1:建立一個大小為 26 的布林陣列 `alphaList` 來跟蹤每個字母的存在。
步驟 2:將整數 `flag` 初始化為 1,假設字串為 pangram。
步驟 4:如果字元是字母(大寫或小寫),則計算其在字母表中的索引,並將 `alphaList` 中相應的位位置為 `true`。
步驟 5:驗證所有字母:迴圈遍歷 `alphaList`
步驟 6:如果任何位位置為 `false`,則將 `flag` 設定為 0(表示字串不是 pangram)。
步驟 7:根據 `flag` 的值列印原始字串以及它是否為 pangram。
Java 程式檢查字串是否為 pangram
下面給出了一個檢查字串是否為 pangram 的程式。
public class Example {
public static void main(String[] args) {
String str = "The quick brown fox jumps over the lazy dog";
boolean[] alphaList = new boolean[26];
int index = 0;
int flag = 1;
for (int i = 0; i < str.length(); i++)
{
if ( str.charAt(i) >= 'A' && str.charAt(i) <= 'Z')
{
index = str.charAt(i) - 'A';
}
else if( str.charAt(i) >= 'a' && str.charAt(i) <= 'z')
{
index = str.charAt(i) - 'a';
}
alphaList[index] = true;
}
for (int i = 0; i <= 25; i++)
{
if (alphaList[i] == false)
flag = 0;
}
System.out.print("String: " + str);
if (flag == 1)
System.out.print("\nThe above string is a pangram.");
else
System.out.print("\nThe above string is not a pangram.");
}
}
輸出
String: The quick brown fox jumps over the lazy dog The above string is a pangram.
程式碼解釋
使用 for 迴圈遍歷字串 'str',對於每個字母,將 aplhaList 中相應的索引設定為 true。
演示此功能的程式碼片段如下所示:
for (int i = 0; i < str.length(); i++) {
if (str.charAt(i) >= 'A' && str.charAt(i) <= 'Z') {
index = str.charAt(i) - 'A';
} else if
(str.charAt(i) >= 'a' && str.charAt(i) <= 'z') {
index = str.charAt(i) - 'a';
}
alphaList[index] = true;
}
之後,遍歷 陣列 alphaList。如果所有值都為 true,則字串為 pangram,並且 flag 的值保持為 1。但是,如果即使 1 個值為 false,則字串不是 pangram,並且 flag 的值被設定為 0。然後顯示字串是否為 pangram。
演示此功能的程式碼片段如下所示。
for (int i = 0; i <= 25; i++) {
if (alphaList[i] == false)
flag = 0;
}
System.out.print("String: " + str);
if (flag == 1)
System.out.print("\nThe above string is a pangram.");
else
System.out.print("\nThe above string is not a pangram.");
}
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP