標題:
606 檢驗學號
[打印本頁]
作者:
李知易
時間:
2024-12-28 15:23
標題:
606 檢驗學號
1. 題目說明:
請依下列題意進行作答,使輸出值符合題意要求。
2. 設計說明:
請撰寫一程式,讓使用者輸入三組學號,學號總共有6個字元,由左至右分別以s0~s5表示,s0~s4均是數字;s5是大寫英文字母的檢查碼。
s5的判斷規則:若公式「((s0+s2+s4)+(s1+s3)*5)%26」的計算結果為1,則s5為A;若計算結果為2,則s5為B,以此類推。請依序判斷使用者輸入的學號是否正確,正確則輸出「Pass」,否則輸出「Fail」。
提示:數字「0」的ASCII碼=48,英文字母「A」的ASCII碼=65。
提示:若使用 Java 語言答題,請以「JP」開頭命名包含 main 靜態方法的 class,評測系統才能正確評分。
3. 輸入輸出:
輸入說明
三組學號
輸出說明
三組學號是否合法
範例輸入
12345M
55237B
03805A
範例輸出
Pass
Pass
Fail
本帖隱藏的內容需要回復才可以瀏覽
作者:
張淯祺
時間:
2024-12-28 15:29
#include<bits/stdc++.h>
using namespace std;
string str;
int as;
int main()
{
for(int i=0;i<3;i++)
{
getline(cin,str);
as=(((str[0]-'0')+(str[2]-'0')+(str[4]-'0'))+((str[1]-'0')+(str[3]-'0'))*5)%26;
if(str[5]-64==as)//((s0+s2+s4)+(s1+s3)*5)%26
cout<<"Pass"<<endl;
else
cout<<"Fail"<<endl;
}
return 0;
}
複製代碼
作者:
劉秉昕
時間:
2024-12-28 15:31
#include<bits/stdc++.h>
using namespace std;
int str[3];
int main()
{
for(int i=0;i<3;i++)
{
getline(cin,str[i]);
}
return 0;
}
複製代碼
作者:
蔡岑昕
時間:
2024-12-28 15:31
#include<bits/stdc++.h>
using namespace std;
int main()
{
for(int i=0;i<3;i++)
string s1;
getline(cin,s1);
return 0;
}
複製代碼
作者:
張仲言
時間:
2024-12-29 11:33
#include<bits/stdc++.h>
using namespace std;
string str;
int main()
{
for(int a=0;a<3;a++)
{
int f=0,s=0;
getline(cin,str);
char r=str[5];
for(int i=0;i<5;i+=2)
{
char c=str[i];
f+=(c-=48);
}
for(int i=1;i<3;i++)
{
char c=str[i*2-1];
s+=(c-=48);
}
int n=(f+s*5);
int dataint=n%26;
int datachar=r-=(65-1);
if(dataint!=datachar)
cout<<"Fail\n";
else
cout<<"Pass\n";
}
return 0;
}
複製代碼
打完了好爽
作者:
蔡岑昕
時間:
2025-1-4 14:40
#include<bits/stdc++.h>
using namespace std;
int main()
{
for(int i=0;i<3;i++)
{
string str;
int n[5];
getline(cin,str);
for(int j=0;j<5;j++)
n[j]=str[j];
int res=((n[0]+n[2]+n[4])+(n[1]+n[3])*5)%26;
if(res==str[5]-'A'+1)
cout<<"Pass"<<endl;
else
cout<<"Fail"<<endl;
}
return 0;
}
複製代碼
作者:
朱奕祈
時間:
2025-1-4 14:41
#include<bits/stdc++.h>
using namespace std;
int main()
{
for(int i=0;i<3;i++)
{
string str;
int n[5];
getline(cin,str);
for(int j=0;j<5;j++)
n[j]=str[j];
int res=((n[0]+n[2]+n[4])+(n[1]+n[3])*5)%26;
if(res==str[5]-'A'+1)
cout<<"Pass"<<endl;
else
cout<<"Fail"<<endl;
}
return 0;
}
複製代碼
作者:
洪榮辰
時間:
2025-1-4 14:44
#include<bits/stdc++.h>
using namespace std;
int main()
{
for(int t=0; t<3; t++)
{
int n[5];
string str;
getline(cin,str);
for(int i=0; i<5; i++)
n[i] = str[i];
int res = ((n[0]+n[2]+n[4])+(n[1]+n[3])*5)%26;
if(res==str[5]-'A'+1)
cout<<"Pass"<<endl;
else
cout<<"Fail"<<endl;
}
return 0;
}
複製代碼
作者:
李穎俊
時間:
2025-1-4 14:44
#include<bits/stdc++.h>
using namespace std;
int main(){
for(int t=0;t<3;t++){
string str;
int n[5];
getline(cin,str);
for(int i=0;i<5;i++)
n[i]=str[i];
int res=((n[0]+n[2]+n[4])+(n[1]+n[3])*5)%26;
if(res==str[5]-'A'+1)
cout<<"Pass"<<endl;
else
cout<<"Fail"<<endl;
}
return 0;
}
複製代碼
作者:
蔡宇庭
時間:
2025-1-4 15:08
#include<bits/stdc++.h>
using namespace std;
int main()
{
for(int i=0;i<3;i++)
{
string str;
int n[5];
getline(cin,str);
for(int j=0;j<5;j++)
n[j]=str[j];
int res=((n[0]+n[2]+n[4])+(n[1]+n[3])*5)%26;
if(res==str[5]-'A'+1)
cout<<"Pass"<<endl;
else
cout<<"Fail"<<endl;
}
return 0;
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2