《Python魔法大冒險》008 石像怪的挑戰:運算符之旅

来源:https://www.cnblogs.com/dreamboy/archive/2023/09/06/17683029.html
-Advertisement-
Play Games

小魚和魔法師繼續深入魔法森林。不久,他們來到了一個巨大的魔法石圈旁邊。石圈中心有一個閃閃發光的魔法水晶,周圍則是一些神秘的符號。但令人意外的是,水晶的旁邊還有一個巨大的石像怪,它的眼睛散髮著紅色的光芒,似乎正在守護著這片區域。 小魚好奇地問:“這是什麼地方?這些符號又是什麼意思?那個石像怪又是怎麼回 ...


小魚和魔法師繼續深入魔法森林。不久,他們來到了一個巨大的魔法石圈旁邊。石圈中心有一個閃閃發光的魔法水晶,周圍則是一些神秘的符號。但令人意外的是,水晶的旁邊還有一個巨大的石像怪,它的眼睛散髮著紅色的光芒,似乎正在守護著這片區域。

小魚好奇地問:“這是什麼地方?這些符號又是什麼意思?那個石像怪又是怎麼回事?”

魔法師微笑地說:“這是魔法森林的能量源,這些符號代表著編程中的運算符。至於那個石像怪,它是這片區域的守護者。只有當我們正確使用這些運算符,並完成一個特定的挑戰,它才會被打敗,我們才能獲得魔法碎片。”

小魚疑惑地看著那些符號:“運算符?聽起來很複雜。”

魔法師:“其實很簡單。運算符就像魔法的咒語,它們可以對數據進行各種操作。比如加、減、乘、除等。”

小魚似懂非懂地點了點頭:“那我們怎麼使用這些運算符呢?”

魔法師:“讓我給你展示一下。”他走到魔法水晶前,開始念誦一些咒語,併在空中畫出了一些代碼:

# 加法
result1 = 5 + 3  # 結果是 8
# 減法
result2 = 10 - 4  # 結果是 6
# 乘法
result3 = 6 * 2  # 結果是 12
# 除法
result4 = 8 / 2  # 結果是 4.0

小魚仔細地觀察這些代碼,然後說:“我明白了,這些運算符就像數學中的加減乘除。”

魔法師點了點頭:“沒錯,小魚。讓我繼續深入給你講講一下。”

數字不僅僅是用來看的,還可以進行各種運算。就像你在數學課上學到的那樣,有加減乘除等運算符。讓我們來探索一下它們的魔法效果:

1.加法和減法

讓我們假設你的朋友送給你兩盒糖果,每盒有10顆。你想知道你一共有多少顆糖果。別擔心,Python可以幫你算出來:

candies_per_box = 10
total_candies = candies_per_box + candies_per_box
print("我一共有", total_candies, "顆糖果!")

在這裡,我們使用了加法運算符“+”,把兩盒糖果的數量相加,得到了總數。你有沒有發現,這就像是一種魔法般的力量在幫助我們計算!

要是你吃了一顆糖果,你可以用減法運算符“-”來計算剩下多少顆糖果:

total_candies = total_candies - 1
print("我還剩下", total_candies, "顆糖果。")

2.乘法和除法

浮點數是帶有小數點的數字,比如:3.14、0.5、2.71828等等。你可以用浮點數來表示巧克力蛋糕的重量、你每天走的步數,甚至是外星人的身高!

讓我們寫一個程式,計算圓的面積,需要用到圓的半徑和π(圓周率):

radius = 5 #半徑
pi = 3.14159 # π
area = pi * radius ** 2 # 計算面積(面積=π乘以半徑的平方)
print("圓的面積是:", area) # 輸出結果

在這裡,我們使用了乘法運算符“*”和平方運算符“**”。這個程式告訴電腦:“嗨,我想計算一個圓的面積。它的半徑是5,而π(圓周率)是3.14159。現在幫我算一下麵積是多少!”。

現在假設你想要把你的糖果平均分給你的兩個朋友,每人分得幾顆呢?彆著急,我們可以使用乘法和除法來解決這個問題:

friends = 2
candies_each = total_candies / friends # 糖果總數除以朋友數量
print("每人分得", candies_each, "顆糖果。")

在這裡,我們用除法運算符“/”來把糖果總數分給朋友們,得到每人分得的數量。

通過運算符的魔法,我們可以在編程世界里實現各種有趣的計算。

小魚:原來是這樣,運算符實在是太強大了!是時候打敗石像怪了。

魔法師點了點頭:“但要打敗石像怪,你需要完成一個特定的挑戰。”

小魚緊張地問:“什麼挑戰?”

魔法師:“你需要使用這些運算符,計算出石像怪給你的數學題的答案。”

小魚點了點頭:“我準備好了。”

只見石像怪頭頂上出現了一道閃閃發光的題目:如果你有10個蘋果,吃掉了3個,然後又得到了5個,你現在有多少個蘋果?”

小魚迅速地在神秘的筆記本電腦上輸入了一行代碼:

apples = 10 - 3 + 5  # 結果是 12

小魚:這也太簡單了。

正當小魚得意洋洋的時候,石像怪的頭頂上又出現了一道題目:假設你在魔法森林的一個角落找到了7個金幣,然後在另一個角落找到了5個金幣。你決定將這些金幣平均分給你和我。但是,如果有多餘的金幣,你會把它們放入魔法儲物箱里。請問,你和我每人能得到多少金幣,魔法儲物箱里又會有多少金幣?

這下可把小魚難住了,小魚拼命的撓頭。

魔法師:彆著急小魚,讓我來教你兩個新的運算符——整數除法(//)和取餘操作(%)。

3.整數除法和取餘操作

整數除法,也被稱為地板除法,是一種除法操作,但它只返回商的整數部分,忽略任何小數部分。這意味著結果總是向下取整。

例如:

  • 9 // 2 返回 4,因為9除以2的結果是4.5,但整數除法只返回整數部分,即4。
  • 15 // 4 返回 3,因為15除以4的結果是3.75,但整數除法只返回整數部分,即3。

取餘操作,通常被稱為模運算,返回除法的餘數。

例如:

  • 9 % 2 返回 1,因為9除以2的商是4,餘數是1。
  • 15 % 4 返回 3,因為15除以4的商是3,餘數是3。

在編程中,這兩個運算符經常一起使用,特別是在涉及到需要將一個數分成多個部分或者需要知道一個數是否能被另一個數整除的情況。例如,我們可以使用%來檢查一個數是否為偶數(如果一個數% 2的結果是0,那麼這個數是偶數)。

小魚恍然大悟,思考了一會兒,然後迅速地在神秘的筆記本電腦上輸入了一些代碼:

total_coins = 7 + 5  # 總共有12個金幣
coins_per_person = total_coins // 2  
print("每人得到",coins_per_person,"個金幣。")
coins_in_magic_box = total_coins % 2  
print("儲物箱里有", coins_in_magic_box,"個金幣。")

運行結果如圖

VSCode終端控制台輸出運算結果

隨著代碼的輸入,魔法水晶發出了更加明亮的光芒。突然,石像怪開始搖晃,它的紅色眼睛逐漸變為綠色,然後它緩緩地倒下,變成了一塊普通的石頭。從它的底座中,浮現出一個閃閃發光的魔法碎片。

小魚驚訝地看著這一切:“我們...我們打敗了它!”

魔法師微笑地說:“沒錯,小魚。你使用正確的運算符,完成了挑戰,打敗了石像怪,並獲得了魔法碎片。”

小魚興奮地拿起魔法碎片,它散髮著溫暖的光芒:“這真的太神奇了!”

魔法師點了點頭:“這隻是開始,小魚。前面還有更多的挑戰等待你。每一次的成功都會讓你更接近成為一個真正的魔法師。”

小魚緊緊握住魔法碎片,眼中閃爍著決心的光芒:“我不怕任何挑戰,魔法師。只要有你在身邊指導我,我相信我可以完成任何任務。”

魔法師微笑地拍了拍小魚的頭:“那就讓我們繼續前進吧,下一個挑戰已經等待著我們。”

兩人繼續深入魔法森林,尋找下一個魔法挑戰,小魚的冒險之旅還在繼續。

更多內容及Java+大數據個人原創視頻,可關註公眾號觀看:

原創文章,轉載請註明出處!!

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 這篇文章的主要內容包括:1、數據架構的演變歷史與各種架構的優缺點。2、流批一體的價值。3、流批一體架構中流與批的關係。 ...
  • 讓 Java 代碼直接在 Nginx 上運行?這麼有趣的功能,隨本文一起來實戰體驗吧,圖文並茂,一定能成功的那種實戰 ...
  • Starter是SpringBoot的四大核心功能特性之一,除此之外,SpringBoot還有自動裝配,Actuator監控等特性 SpringBoot裡面的這些特性,都是為了讓開發者在開發基於Spring生態下的企業級應用時,只需要關係業務邏輯,減少對配置和外部環境的依賴 ...
  • Linux通常都附帶Python環境,但是Linux附帶的大多數Python都是2.7.5版本。如果我們想使用Python3或者Anaconda3,最好安裝一個新的Python3環境,但不要嘗試刪除Python2,避免引起不必要的麻煩 ...
  • # 【python技巧】替換文件中的某幾行 ## 1. 背景描述 最近在寫一個後端項目,主要的操作就是根據用戶的前端數據,在後端打開項目中的代碼文件,修改對應位置的參數,因為在目前的後端項目中經常使用這個操作,所以簡單總結一下。 ``` 1. 文件路徑:./test.c 2. 文件內容 …… cas ...
  • 最近在公司項目上遇到程式運行時崩潰,也不好在log日誌中定位。查找了資料發現,谷歌的一個開源項目Breakpad,統一了這三平臺win、linux、mac生成dump的方式來捕捉崩潰。 大致研究了一下,主要依賴一個靜態庫和幾個頭文件,我這邊編譯出來放到網盤上大家自行使用。 鏈接: https://p ...
  • for迴圈用於多次執行特定的代碼塊,每次都可以使用不同的值。每次迴圈執行都稱為一次迭代。for迴圈可以包含最多三個語句: 語法 ```Go for 語句1; 語句2; 語句3 { // 每次迭代要執行的代碼 } ``` - 語句1:初始化迴圈計數器的值。 - 語句2:對每次迴圈迭代進行評估。如果評估 ...
  • ## Synchronized 本篇文章將圍繞synchronized關鍵字,使用大量圖片、案例深入淺出的描述CAS、synchronized Java層面和C++層面的實現、鎖升級的原理、源碼等 大概觀看時間17分鐘 可以帶著幾個問題去查看本文,如果認真看完,問題都會迎刃而解: 1、synchro ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...