C++で数値を16進数に変換する
したがって、入力が254と-12のような場合、出力はそれぞれfeとfffffff4になります。
これを解決するには、次の手順に従います-
-
num1が0と同じ場合、-
-
「0」を返す
-
-
num:=num1
-
s:=空白の文字列
-
numがゼロ以外の場合は、-
を実行します。-
temp:=num mod 16
-
temp <=9の場合、-
-
s:=s+数字としての温度
-
-
それ以外の場合
-
s:=s+アルファベットとしての温度
-
-
num:=num / 16
-
-
配列を反転します
-
sを返す
例
理解を深めるために、次の実装を見てみましょう-
#include <bits/stdc++.h> using namespace std; class Solution { public: string toHex(int num1){ if (num1 == 0) return "0"; u_int num = num1; string s = ""; while (num) { int temp = num % 16; if (temp <= 9) s += (48 + temp); else s += (87 + temp); num = num / 16; } reverse(s.begin(), s.end()); return s; } }; main(){ Solution ob; cout << (ob.toHex(254)) << endl; cout << (ob.toHex(-12)); }
入力
254 -12
出力
fe fffffff4
-
C++五胞体数
五胞体数は、パスカルの三角形の5番目の数として表されます。ご存知のように、これは5番目の数字です。つまり、パスカルの三角形に少なくとも5つの数字が必要です。したがって、このシリーズの最初の数字は 1 4 6 4 1から始まります。 パスカルの三角形の4行目。したがって、このチュートリアルでは、たとえば、n番目の五胞体数を見つける必要があります Input : 1 Output : 1 Input : 4 Output : 35 次の図から出力を確認できます- この問題については、可能な限り、これは一種のシリーズであるため、ソリューションでこのシリーズのパターンを見つけようと
-
16進数から10進数のC++プログラム
16進数を入力として指定すると、タスクは指定された16進数を10進数に変換することです。 コンピューターの16進数は16を底とし、10進数は10を底とし、0〜9の値で表されますが、16進数は0〜15から始まる数字で、10はA、11はB、12はC、 Dとして13、Eとして14、Fとして15。 16進数を10進数に変換するには、次の手順に従います- 余りから右から左に数字を抽出し、それを0から始まる累乗で乗算し、(桁数)–1まで1ずつ増やします。 16進数から2進数に変換する必要があるため、8進数の基数は16であるため、累乗の基数は16になります。 指定された入力の桁にベースとパワーを掛け