首頁 後端開發 C++ 使用堆疊在C++中反轉一個數字

使用堆疊在C++中反轉一個數字

Sep 14, 2023 pm 12:45 PM
數位 反轉 堆疊

使用堆疊在C++中反轉一個數字

我們得到一個整數 Num 作為輸入。目標是使用堆疊找到數字的倒數。

Stack:- 堆疊是 C 語言中的一種資料結構,它以 LIFO(後進先出)方式儲存資料。堆疊的主要操作有-:

宣告-:stack ;持續; //stck 現在是一個堆疊變數。

  • 使用 top() 來尋找頂部。函數 stck.top() 傳回 stck 中頂部元素的參考

  • 使用 pop() 刪除頂部。函數從 stck 中刪除最上面的元素

  • #使用 push() 將元素新增到頂部。函數 stck.push( value ) 將項目值加入堆疊中。值應為 stck 類型。

  • ##使用

    empty() 檢查 staxk 是否為空。如果堆疊為空,函數stck.empty() 回傳true。

範例

輸入 − Num = 33267

輸出− 數字的逆序為:76233

解釋

首先我們將所有元素壓入堆疊

7 - 6 - 2 - 3 - 3 ← 頂部

7 * 10000 6 * 1000 2*100 3*10 3*1 ←

= 70000 6000 200 30 3# ←## = 76233

輸入

− Num = 111000

輸出

− 數字的反轉為:111

#解釋

首先我們將所有元素壓入堆疊

0 - 0 - 0 - 1 - 1 - 1 ← top

0 * 100000 0 * 10000 0 *1000 1*100 1*10 1*1 ←

= 0 0 0 100 10 1 ←

= 111

#下面程式中使用的方法如下

在這個方法中,我們首先將輸入數字的餘數壓入堆疊,並將數字減少10,直到數字變為0。這樣堆疊將填充頂部作為第一位數字。

取得輸入數字 Num.
  • 使用 stack 為整數取得空堆疊; stck.
  • 函數pushDigts(int num1)接受num1並將其添加到堆疊中,第一個數字在頂部。
  • ##將rem 為變數。

  • 使用while 迴圈檢查num1 是否非零,如果為true,則設定rem=num1 。

  • 將rem 壓入堆疊。

  • 將num1 減少10 作為第二個數字,依此類推。

  • 現在使用函數 revrseNum() 使用堆疊元素反轉數字。

  • ##取變數revrs,topp,temp,i。

  • 當堆疊不為空時

  • #取最上面的元素為topp=stck.top().

  • #Reduce stack using stck.pop().

  • Set temp= topp*i.

  • 將溫度加到轉速。

  • 以100 的倍數將i 增加i*10 。

  • 最後傳回輸入num的反轉作為revrs。

  • 列印main中獲得的結果。

  • 範例

    #include <bits/stdc++.h>
    using namespace std;
    stack <int> stck;
    void pushDigts(int num1){
       int rem;
       while (num1 > 0){
          rem=num1 % 10;
          stck.push(rem);
          num1 = num1 / 10;
       }
    }
    int revrseNum(){
       int revrs = 0;
       int i = 1;
       int temp;
       int topp;
       while (!stck.empty()){
          topp=stck.top();
          stck.pop();
          temp=topp*i;
          revrs = revrs + temp;
          i *= 10;
       }
       return revrs;
    }
    int main(){
       int Num = 43556;
       pushDigts(Num);
       cout<<"Reverse of number is: "<<revrseNum();
       return 0;
    }
    登入後複製

    輸出
如果我們上面的程式碼,將會產生以下運行輸出

Reverse of number is: 65534
登入後複製

以上是使用堆疊在C++中反轉一個數字的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

iOS 17:如何在待機模式下變更iPhone時鐘樣式 iOS 17:如何在待機模式下變更iPhone時鐘樣式 Sep 10, 2023 pm 09:21 PM

待機是一種鎖定螢幕模式,當iPhone插入充電器並以水平(或橫向)方向定位時啟動。它由三個不同的螢幕組成,其中一個是全螢幕時間顯示。繼續閱讀以了解如何變更時鐘的樣式。 StandBy的第三個畫面顯示各種主題的時間和日期,您可以垂直滑動。某些主題也會顯示其他訊息,例如溫度或下一個鬧鐘。如果您按住任何時鐘,則可以在不同的主題之間切換,包括數位、類比、世界、太陽能和浮動。 Float以可自訂的顏色以大氣泡數字顯示時間,Solar具有更多標準字體,具有不同顏色的太陽耀斑設計,而World則透過突出顯示世界地

如何在iPhone上自訂和編輯待機模式:iOS 17的新功能 如何在iPhone上自訂和編輯待機模式:iOS 17的新功能 Sep 21, 2023 pm 04:01 PM

待機是iOS17更新中的一項新功能,它提供了一種新的增強方式,可以在手機快速閒置時存取資訊。透過StandBy,您可以輕鬆查看時間、查看即將發生的事件、瀏覽日曆、獲取您所在位置的天氣更新等等。啟動後,iPhone在充電時設定為橫向時會直觀地進入待機模式。此功能非常適合床頭櫃等無線充電點,或在日常任務中離開iPhone充電時。它允許您輕掃待機中顯示的各種小部件,以存取來自各種應用程式的不同資訊集。但是,您可能希望根據您的偏好和您經常需要的資訊修改這些小部件,甚至刪除一些小部件。因此,讓我們深入

JavaScript中產生隨機數字和字串 JavaScript中產生隨機數字和字串 Sep 02, 2023 am 08:57 AM

產生隨機數或字母數字字串的能力在許多情況下都會派上用場。您可以使用它在遊戲中的不同位置生成敵人或食物。您也可以使用它向用戶建議隨機密碼或建立文件名來保存文件。我寫了一篇關於如何在PHP中產生隨機字母數字字串的教學。我在這篇文章的開頭說,幾乎沒有事件是真正隨機的,同樣的情況也適用於隨機數或字串生成。在本教程中,我將向您展示如何在JavaScript中產生偽隨機字母數字字串。在JavaScript中產生隨機數字讓我們從產生隨機數開始。我想到的第一個方法是Math.random(),它回傳一個浮

iOS 17:如何在待機模式下自訂小工具 iOS 17:如何在待機模式下自訂小工具 Sep 17, 2023 pm 01:57 PM

待機是iOS17中一種新的可自訂鎖定螢幕模式,可在iPhone充電並側臥時啟動。可以將其視為iPhone的一種智慧顯示屏,例如,當您的裝置在廚房,書桌或床頭櫃上充電時,可以​​快速存取可以遠處查看的不同可瀏覽資訊螢幕。自訂備用構件待機由三個螢幕組成,可透過在iPhone顯示器上水平滑動來存取。第一個螢幕是互動式小工具的位置,而向左滑動會顯示第二個和第三個螢幕,分別顯示照片圖庫中的照片和大時鐘顯示。小部件螢幕由兩個並排顯示的互動式小部件堆疊組成,您可以獨立地上下滑動。這些堆疊就像主螢幕小工具堆疊

C++程式將一個數字四捨五入到n位小數 C++程式將一個數字四捨五入到n位小數 Sep 12, 2023 pm 05:13 PM

在任何語言中編寫程式時,將數字表示為輸出是一項有趣且重要的任務。對於整數類型(short、long或medium類型的資料),很容易將數字表示為輸出。對於浮點數(float或double類型),有時我們需要將其四捨五入到特定的小數位數。例如,如果我們想將52.24568表示為三位小數,需要進行一些預處理。在本文中,我們將介紹幾種技術,透過四捨五入將浮點數表示為特定的小數位數。在不同的方法中,使用類似C的格式化字串、使用精度參數以及使用數學函式庫中的round()函數是很重要的。讓我們逐一來看。帶有

使用C++編寫程式碼,找到第N個非平方數 使用C++編寫程式碼,找到第N個非平方數 Aug 30, 2023 pm 10:41 PM

我們都知道不是任何數字的平方的數字,如2、3、5、7、8等。非平方數有N個,不可能知道每個數字。因此,在本文中,我們將解釋有關無平方數或非平方數的所有內容,以及在C++中尋找第N個非平方數的方法。第N個非平方數如果一個數是整數的平方,則該數稱為完全平方數。完全平方數的一些例子是-1issquareof14issquareof29issquareof316issquareof425issquareof5如果一個數不是任何整數的平方,則該數稱為非平方數。例如,前15個非平方數是-2,3,5,6,

找出在範圍內不可被任何數整除的數字,使用C++ 找出在範圍內不可被任何數整除的數字,使用C++ Sep 13, 2023 pm 09:21 PM

在本文中,我們將討論查找1到n(給定)之間的數字的問題,這些數字不能被2到10之間的任何數字整除。讓我們透過一些例子來理解這一點-Input:num=14Output:3Explanation:Therearethreenumbers,1,11,and13,whicharenotdivisible.Input:num=21Output:5Explanation:Therearefivenumbers1,11,13,17,and19,whicharen的解題方法簡單方法如果

Java中的數字(帶有0前綴和字串) Java中的數字(帶有0前綴和字串) Aug 29, 2023 pm 01:45 PM

Java中的數字重要的是要理解數字類不是一個有形的類,而是一個抽象的類。在它內部,我們有一組定義其功能的包裝類別。這些包裝類別包括Integer、Byte、Double、Short、Float和Long。您可能會注意到,這些與我們之前討論的基本資料類型相同,但它們表示為具有大寫名稱的單獨類,以符合類命名約定。根據特定函數或程式範圍的要求,編譯器會自動將原始資料類型轉換為對象,反之亦然,且數字類別是java.lang套件的一部分。此過程稱為自動裝箱和拆箱。透過掌握數字類別及其對應的包裝類別的抽象性質,我們可以

See all articles