TOI推廣計畫 解題-解密情書 Icon made by [https://www.freepik.com/]from www.flaticon.com 

Slides:



Advertisements
Similar presentations
資料坐火車 …… 談陣列 (Array) 綠園 2008/12/15. Array 的宣告 整數陣列的宣告  int student[5]; 意義:宣告了 5 個 int 大小的連續空間,名稱 為 student ,沒有預設值,則為系統殘值。 student student[0] student[1]
Advertisements

綠園 2012/11/06. Array 的宣告 整數陣列的宣告 int student[5]; 意義:宣告了 5 個 int 大小的連續空間,名稱 為 student ,沒有預設值,則為系統殘值。 student student[0] student[1] student[4] student[2]
綠園 2012/11/06. Array 的宣告 整數陣列的宣告 int student[5]; 意義:宣告了 5 個 int 大小的連續空間,名稱 為 student ,沒有預設值,則為系統殘值。 student student[0] student[1] student[4] student[2]
第四届“财贸杯”创业计划大赛竞赛申报说明
今日目標 複習進度 小考及作業 題目練習.
第十章 谬误逻辑 主讲人:耿国华.
考点作文十大夺魁技法 第28课时 写作(二) 考点作文十大夺魁技法 6-10 ·新课标.
俺莱芜有 艺管1201班 张文文 I LOVE YOU.
翻开近代第一家族兴衰史: 宋氏家族私密生活相册 【单击切换】.
舊石器時代 位置: 亞洲大陸東緣,西太平洋弧狀列島一部份 背景 形成: 兩千多萬年前逐漸隆起,形成島嶼 生物: 大角鹿、猛瑪象、亞洲大陸原始人 臺東 長濱文化 苗栗 網形文化 臺南 左鎮人目前臺灣發現最早人類化石 代表 文化 1.住在海邊洞穴-短期定居小型隊群 2.以採集、狩獵為生 3.使用礫石砍伐器、片器、尖器.
第三单元 学会交往 3.1 我和父母.
第六篇 借你一双慧眼——社交安全.
静下心来教书 潜下心来育人 —做一个幸福快乐的好老师 北京市广渠门中学 高金英.
习作六.父母的爱 南昌县莲塘五小: 万美琴.
我的「義」世代---義大利麵珍珠肉丸 作者: 許佳筠。台南市私立長榮女子高級中學。餐三孝 羅小瑛。台南市私立長榮女子高級中學。餐三孝
輸出與輸入(I/O).
File Access 井民全製作.
浅析广告语言的特性.
C 程式設計— 字元與字串 台大資訊工程學系 資訊系統訓練班.
Visual C++ introduction
第8章 字元與字串處理 8-1 C語言的字元檢查函數 8-2 指定字串的初值 8-3 指標與字串 8-4 字串處理 8-5 C語言的字串函數.
C 程式設計— 檔案處理 台大資訊工程學系 資訊系統訓練班.
C語言簡介 日期 : 2018/12/2.
生物資訊程式語言應用 Part 3 Perl Language.
回顾: 室友的5个优点: 毒蛇、高冷、爱撒娇、爱吹牛、逗比、大大咧咧、不服输、婆妈、保守、声音嗲嗲、偶尔智障、内心敏感、奇特的想法、喜欢小动物、睡眠好、很听爸爸妈妈的话、会弹钢琴.
|13 檔案資料讀寫.
Ch10 字元與字串 物件導向程式設計(II).
JAVA 程式設計與資料結構 第四章 陣列、字串與數學物件.
10298: Power Strings ★★☆☆☆ 題組:Problem Set Archive with Online Judge
程式設計實習課(四) ----C 函數運用----
UpToDate Anywhere 設定方法
雲端計算.
JAVA 程式設計 資訊管理系 - 網路組.
輸入&輸出 函數 P20~P21.
第十章 指標.
第九章 字串.
第一次Labview就上手 參考書籍: LabVIEW for Everyone (Jeffrey Travis/Jim Kring)
CH05. 選擇敘述.
期末考.
挑戰C++程式語言 ──第8章 進一步談字元與字串
SOCKET( ).
C qsort.
實作輔導 本周5/5(六)安排實作輔導 二時段: 周六 11:00~12:30 周六13:30~15:30.
挑戰C++程式語言 ──第7章 輸入與輸出.
MiRanda Java Interface v1.0的使用方法
第14章 結構與其他資料形式.
10115: Automatic Editing ★★☆☆☆
字 串 9 子曰:「質勝文則野,文勝質則史。 文質彬彬,然後君子。」 《論語﹒雍也第六》
12797: Letters ★★★☆☆ 題組:Problem Set Archive with Online Judge
認識英文字母『J』.
11058: Encoding ★☆☆☆☆ 題組:Problem Set Archive with Online Judge
C 程式設計— 檔案處理 台大資訊工程學系 資訊系統訓練班.
1757: Secret Chamber at Mount Rushmore
歡迎你們來到 興德國小輔導室.
資料結構與C++程式設計進階 期末考 講師:林業峻 CSIE, NTU 7/ 15, 2010.
作業系統實習課(二) -Scheduler-Related System Calls-
Programming & Language Telling the computer what to do
10791: Minimum Sum LCM ★★★☆☆ 題組:Problem Set Archive with Online Judge
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
String類別 在C語言中提供兩種支援字串的方式 可以使用傳統以null結尾的字元陣列 使用string類別
TOI推廣計畫 解題-貨幣轉換 Icon made by [
NFC (近場通訊, Near Field Communication) 靜宜大學資管系 楊子青
Array(陣列) Anny
10303: How Many Trees? ★★☆☆☆ 題組:Contest Archive with Online Judge
TOI推廣計畫 解題-座位安排.
108學年度 全校導師輔導座談會 教務處業務宣導.
教師檔案系統資料如何填寫? 如何對應教師評鑑共同基準?.
NWE詢價系統使用說明--for vendor
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
InputStreamReader Console Scanner
Presentation transcript:

TOI推廣計畫 解題-解密情書 Icon made by [https://www.freepik.com/]from www.flaticon.com 

默默喜歡著雯雯很久的阿遠,遲遲不敢向對方表達心意。不主動傳訊息給對方怕被當變態、面對面時因爲雯雯太可愛會害羞講不出話,一直沒有行動的阿遠發現最近雯雯的身邊有其他異性的存在,因此就算使出渾身解術都要讓對方明白自己的心意,進行愛的告白! 阿遠想到了一個進可攻、退可守的策略:給雯雯一封加密過的信件,內容是用凱薩密碼加密過後的情書。但其實這一切都在雯雯的掌握中,她也喜歡阿遠,所以才故意安排異性好友在身邊設法讓阿遠告白,雯雯已經等不及要解開信件上的內容了! 「凱薩密碼」:明文中的所有字母都在字母表上向後、或向前位移,按照一個固定數目進行偏移後被替換成密文。雯雯已知加密後信件中一定有Love或love這個字,且只需解密英文字母,請幫她找出最少向後位移量k快速解密情書的內容,接受阿遠的告白! 題 目

輸入格式 有一個字串S (1  S 1000),代表加密過的情書內容。字串S包含大小寫英文字母、符號、空白,讀到換行時停止輸入。 輸出格式 僅輸出一個正整數,代表密文解密後最少偏移量k (0  k  25),使字串中包含Love或love的凱薩密碼。 輸入範例 F ilsb vlr. 輸出範例 3 (解密後:I love you.)

1. 字串讀取 字元陣列讀取 2. 字串處理 字串位移比對 解題重點: 1. 字串讀取 字元陣列讀取 2. 字串處理 字串位移比對 Icon made by [https://www.flaticon.com/authors/smalllikeart] from www.flaticon.com 

1.字串讀取 字元陣列讀取 Icon made by [https://www.freepik.com/] from www.flaticon.com 

1. 字元陣列讀取 字元陣列操作: 創立陣列(字串S (1  S 1000) ) 讀取字元直到換行 char *fgets(char *str, int n, FILE *stream) 讀取指定的一行,並將其存儲到由str指向的字串。 當讀到換行或是超過最大字串長度停止讀取! 儲存字串 最大字串長度 標準輸入

2. 字串處理 字串位移、比對 Icon made by [https://www.flaticon.com/authors/twitter] from www.flaticon.com 

2. 字串處理 字串位移: 明文--------- 密文--------- 凱薩密碼 https://zh.wikipedia.org/wiki/凱撒密碼 2. 字串處理 字串位移: 凱薩密碼 明文中的所有字母都在字母表上向後、或向前位移,按照一個固定數目進 行偏移後被替換成密文。 明文--------- 位移 k = 4 密文---------

2. 字串處理 字串位移: 已有加密後密文,要求解密後明文 ‘Z’ + 4 ≠ ‘C’  如果 位移 k 後超過‘Z’, 則回到‘A’ ‘A’ + 4 = ‘D’ ‘Z’ + 4 ≠ ‘C’ 位移 k = 4  如果 位移 k 後超過‘Z’, 則回到‘A’ if ( ( 密文 + k ) > ‘Z’ ) 明文 = ( k - ( ‘Z’ - 密文 + 1 ) ) + ‘A’ ; else 明文 = 密文 + k ; https://computersciencewiki.org/index.php/ASCII

2. 字串處理 字串位移:(因要測試不同位移k,所以須將密文保存,暫存解密後明文。) 暫存陣列 區分英文字 區分英文字大小寫 判斷位移後超過‘Z ’or‘z ’ 要從‘A ’or‘a ’繼續位移 (3) 字串位移 if ( ( 密文 + k ) > ‘Z’ ) 明文 = ( k - ( ‘Z’ - 密文 + 1 ) ) + ‘A’ ; else 明文 = 密文 + k ;

2. 字串處理 字串比對: (1) 從解密後明文:找到Love、love 回傳值 indicates <0 str1 < str2 str1 = str2 >0 str1 > str2 2. 字串處理 字串比對: (1) 從解密後明文:找到Love、love int strncmp (const char *s1, const char *s2, size_t n); 比較n個字元 找到Love 、love 跳出迴圈

3. 範例程式 1 2 3

3. 範例程式 1 2 3