C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++で9を削除


整数nがあるとすると、次の操作を実行した後、n番目の整数を返す必要があります。整数1から開始し、9、19、29などの9を含む整数を削除します。 1、2、3、4、5、6、7、8、10、11、...1が最初の整数になることに注意する必要があります。

したがって、入力が9のような場合、出力は10になります

これを解決するには、次の手順に従います-

  • ret:=0

  • s:=1

  • nがゼロ以外の場合、-

    を実行します。
    • ret:=ret +(n mod 9)* s

    • n:=n / 9

    • s:=s * 10

  • s:=s * 10

理解を深めるために、次の実装を見てみましょう-

#include <bits/stdc++.h>
using namespace std;
typedef long long int lli;
class Solution {
   public:
   int newInteger(int n) {
      int ret = 0;
      lli s = 1;
      while (n) {
         ret += (n % 9) * s;
         n /= 9;
         s *= 10;
      }
      return ret;
   }
};
main(){
   Solution ob;
   cout << (ob.newInteger(120));
}

入力

120

出力

143

  1. 文字列からスペースを削除するC++プログラム?

    プログラムは文字列を受け取り、その中のスペースを削除します。これは、スペースを節約したい場合に便利です。次のサンプルは、説明付きでどのように行われるかを示しています。 Input: Hello World Output: HelloWorld 説明 文字列または文からスペースを削除または削除するには、ユーザーに文字列の入力を求める必要があります。次に、スペースのチェックを開始します。スペースが見つかった場合は、スペースから最後の文字まで後ろに次の文字を配置し始め、次のスペースをチェックして、文字列に存在するすべてのスペースを削除します 例 #include <iostream>

  2. C ++のisnormal()

    このセクションでは、C ++のisnormal()関数について説明します。この関数はcmathライブラリにあります。この関数は、数値が正常かどうかを確認するために使用されます。非正規と見なされる数値は、ゼロ、無限大、またはNANです。 この関数は、引数としてfloat、double、またはlongdoubleの値を取ります。数値が正常な場合は1を返し、それ以外の場合は0を返します。 例 #include<iostream> #include<cmath> using namespace std; int main() {    cout <&