-
抽出演算子をオーバーロードするC++プログラム
2つの属性first_nameとlast_nameを持つPersonクラスがあるとします。また、get_first_name()とget_last_name()という2つのメソッドがあり、それぞれ名と姓を取得または設定します。 coutステートメントを使用して名前を印刷するには抽出演算子(<<)をオーバーロードし、名前を印刷するには名前をオーバーロードする必要があります。 したがって、入力が名と姓( Sumit、 Ray)の人物オブジェクトのようなものである場合、出力は名-Sumit、姓-Rayになります。 これを解決するには、次の手順に従います- 抽出演算子をオーバーロードするには
-
2つの行列を追加するために加算演算子をオーバーロードするC++プログラム
2つの行列mat1とmat2があるとします。これらの2つの行列を追加して、3番目の行列を作成する必要があります。加算演算子をオーバーロードしてこれを行う必要があります。 したがって、入力が次のような場合 5 8 9 6 7 9 8 3 4 7 6 3 その場合、出力は次のようになります 13 11 13 13 13 12 これを解決するには、次の手順に従います- 加算演算子をオーバーロードします。これにより、2番目の引数として別の行列マットが使用
-
入力として提供されるさまざまなデータ型の値を出力するC++プログラム
入力として、整数値、long値、文字値、float値、およびdouble値が指定されているとします。精度を維持しながら、入力として与えられた値を印刷する必要があります。 したがって、入力が整数値=15、長い値=59523256297252、文字値=y、浮動小数点値=367.124、倍精度値=6464292.312621のような場合、出力はになります。 15 59523256297252 y 367.124 6464292.31262 これを解決するには、次の手順に従います- 入力として指定された値を別々の行に印刷します。 例 理解を深めるために、次の実装を見てみましょう- #incl
-
配列内の特定の値を検索するC++プログラム
n個のソートされた整数値を含む配列arrが与えられたと仮定します。サイズqの配列「query」も指定されており、「query」の値が指定された配列「arr」に存在するかどうかを確認する必要があります。クエリの値がarrに存在する場合は、値が配置されている位置とともに「Present」を出力します。それ以外の場合は、「Not present」を出力し、arrの位置を出力します。ここで、最小値はの値よりも大きくなります。クエリが見つかりました。配列は1つのインデックスが付けられていることを覚えておく必要があります。 したがって、入力がn =8、arr ={1、2、3、4、7、9、12、15}、q
-
指定された形式で値を出力するC++プログラム
3つのdouble値が与えられているとします。それらをフォーマットして、次のフォーマットで印刷する必要があります。 最初の値の整数部分を小文字の16進形式で印刷する必要があります。 2番目の値を小数点以下2桁まで印刷し、その前に正か負かを示す記号を付ける必要があります。印刷する2番目の値は、右寄せで15文字の長さで、左側の未使用位置にアンダースコアを埋める必要があります。 科学的記数法で小数点以下9桁までの3番目の値を印刷する必要があります。 したがって、入力が256.367、5783.489、12.5643295643のような場合、出力は 0x100 _______+
-
マルチレベルの継承を示すC++プログラム
Vehicle、FourWheeler、Carの3つのクラスがあるとします。クラスVehicleは基本クラスであり、クラスFourWheelerはそれから派生し、クラスCarはクラスFourWheelerから派生します。クラスVehicleには、「I am a Vehicle」を出力するメソッド「vehicle」があり、クラスFourWheelerには、「I have four Wheels」を出力するメソッド「fourWheeler」があり、クラスCarには、「I amacar」を出力するメソッド「car」があります。 。したがって、これはマルチレベルの継承であるため、クラスCarのオブジェ
-
マクロの機能を示すC++プログラム
いくつかの整数値を含む整数配列が与えられたと仮定します。配列内の最小値と最大値の違いを見つける必要があります。この問題を解決するには、マクロを使用する必要があります。入力はstdinから取得され、結果はstdoutに出力されます。 したがって、入力がarray ={120、589、324、221、234}のような場合、出力は次のようになります。答えは:469 最大値589と最小値120の差は469です。 これを解決するには、次の手順に従います- ミニ:=無限大 maxi:=負の無限大 vの各iについて、 v [i]の場合、 mini:=v [i] maxi
-
例外処理を示すC++プログラム
いくつかの深刻な複雑な数学演算を計算する関数があるとします。ただし、操作中にいくつかの例外が発生する可能性があります。発生する可能性のあるさまざまな種類の例外を処理し、次のことを実行する必要があります。 コンピュータが計算用のメモリを割り当てることができない場合は、「MemoryLow!」を出力する必要があります 他のC++関連の例外が発生した場合は、「Exception:」を出力してから例外を出力する必要があります。 何か他のことが起こった場合、「未処理の例外」を出力します。 値のペアを含む配列が与えられ、それを関数に渡します。例外が発生した場合はそれを処理し、それ以外の場合は出力値を
-
いくつかの大きな数を追加するC++プログラム
いくつかの大きな数の配列numがあるとします。大きな数は範囲内です(-2^31から2^31-1)。これらの数値の合計を見つける必要があります。 したがって、入力がnums =[5000000003、3000000005、8000000007、2000000009、7000000011]の場合、出力は25000000035になります。 これを解決するには、次の手順に従います- x:=0 iを初期化する場合:=0、i
-
C++で各デカルト座標を接続するための最小コストを見つけるプログラム
2Dデカルト座標点(x、y)のリストがあるとします。 (x0、y0)と(x1、y1)を接続できます。コストは| x0--x1|です。 + | y0--y1|。任意の数のポイントを接続できる場合は、すべてのポイントがパスで接続されるように、必要な最小コストを見つける必要があります。 したがって、入力がpoints =[[0、0]、[0、2]、[0、-2]、[2、0]、[-2、0]、[2、3]、[2 、-3]]、 (0、0)から(0、2)、(0、-2)、(2、0)、(-2、0)、コストは2、合計は8であるため、出力は14になります。 (2、3)は(0、2)に最も近く、コストは| 2 +1
-
C++のゼロ以外の部分行列の数を調べるプログラム
2つの値のみを含む行列が与えられたとします。 1と0。すべての1を含む与えられた行列の部分行列の数を見つける必要があります。値を出力として出力します。 したがって、入力が次のような場合 0 0 1 0 0 1 0 0 0 1 0 1 1 1 0 1 その場合、出力は12になります。 これを解決するには、次の手順に従います- n:=行列のサイズ m:=行列のサイズ[0] サイズの配列追加を定義します:n + 1 x m+1。 iを初期化する場合:=0、i
-
要素の合計がC++の特定の値に等しい行列から部分行列の数を見つけるプログラム
整数値を含む行列が与えられたと仮定します。行列の要素の合計が特定のターゲット合計値に等しい行列から部分行列を見つける必要があります。部分行列の数を返します。 したがって、入力が次のような場合 0 0 1 0 0 1 0 0 0 1 0 1 1 1 0 1 ターゲット=5の場合、出力は3になります。 要素の合計が6に等しい部分行列の数は2です。 これを解決するには、次の手順に従います- n:=マットのサイズ m:=(nが0と同じ場合は0、それ以外の場合はmat [0]のサイズ) nの場合、-
-
C++で整数の配列を単一の値にマージするコストを見つけるためのプログラム
n個の正の整数を含む配列arrが与えられたと仮定します。整数jも与えられます。実行する必要のあるタスクは、j個の数値を加算して1つの数値にマージすることです。マージのコストは、選択したj個の数値を加算したものと同じです。このマージ操作の最小コストを見つける必要があります。 したがって、入力がarr =[2、5、6、2、3、1、3]、j =4の場合、出力は31になります。 2、3、1、3をマージするためのコストは、2 + 3 + 1 + 3=9に等しくなります。 マージ操作後の配列は[2、5、6、9]になります。 2番目のマージ操作のコストは2+5 + 6 + 9 =22に等しくなります。
-
C++で特定のメッセージをデコードするプログラム
整数の文字列であるエンコードされたメッセージが与えられたと仮定します。これで、これらの整数をアルファベットの特定の文字にマッピングできます。 aは1にマップされ、bは2にマップされ、cは3にマップされます。メッセージに含めることができ、1から9までの任意の数字にマップできる文字「*」もあります。したがって、メッセージ「入力」が与えられた場合、それをデコードできる方法がいくつあるかを調べる必要があります。 したがって、入力がinput =18のような場合、出力は2になります。 1つは「a」にマップされ、8つは「h」にマップされるため、メッセージは「ah」にデコードできます。また、18は「r
-
C++で正の整数を単語で表現するプログラム
正の整数が与えられたとしましょう。数字を単語で綴る必要があります。たとえば、入力として「56」という数字が指定されている場合、出力は「Fifty-Six」になります。変換の範囲は最大10億です。 したがって、入力がinput =5678のような場合、出力は5千六百七十八になります。 これを解決するには、次の手順に従います- − {{Billion、1000000000}、などのペアを含む配列の「数値」を定義します {Million、1000000}、 {千、1000}、 {100、100}、 {90、90}、 {80、80}、 {Seventy、70}、 {Sixty、6
-
C++の配列内のすべての要素ペア間のk番目に小さい差を見つけるプログラム
いくつかの整数を含むリストが与えられたとしましょう。配列内の値の各ペア間の差を見つけ、k番目に小さい差の数を見つける必要があります。インデックスは0から始まり、値kが入力として提供されます。 したがって、入力が数値={2、6、4、8}、k =2のような場合、出力は2になります。 ペア間の違いは-です (2、6)=4 (2、4)=2 (2、8)=6 (6、4)=2 (6、8)=2 (4、8)=4 値を並べ替えると、2、2、2、4、4、6になります。2番目に小さい値は2です(インデックスは0から始まります)。 これを解決するには、次の手順に従います- kを1増やし
-
参加者が映画祭で完全に見ることができる映画の数を調べるためのC++プログラム
さまざまな国のさまざまな映画を紹介する映画祭が開催されているとします。現在、参加者は互いに重複しない最大数の映画に参加したいと考えており、参加できる映画の数を見つけるのを支援する必要があります。 次のメンバーを持つ構造ムービーがあります- 映画の開始時間。 映画の長さ。 映画の終了時間。 次のメンバーで構成される別の構造フェスティバルがあります- 映画祭での映画の数。 映画祭の映画の数と同じサイズの映画タイプの配列。 複数の映画の開始時間と長さをそれぞれ含む2つの配列「timeBegin」と「duration」を使用してFestivalオブジェクトを作成および初期化する必要があり
-
特定のシーケンスで個別の要素を見つけるためのC++プログラム
3つの整数n、x、y、およびzが与えられているとします。シーケンスの最初の項目が(x modulo 2 31 である、指定された整数からシーケンスを作成する必要があります。 )。最初の要素以外の、シーケンスa iの他の要素 =(a (i-1) * y + z)モジュロ2 31 、ここで、1≤i≤n-1。作成したシーケンス内の個別の整数の数を調べる必要があります。 したがって、入力がn =5、x =1、y =2、z =1の場合、出力は5になります。 一意の値は{1、3、7、15、31}です。したがって、答えは5です。 これを解決するには、次の手順に従います- MOD:=2 ^
-
C++を使用してアレイ全体を強力にするための電力を提供するための最小1
任意のサイズの1と0の数字を格納できるバイナリ配列と、たとえば底辺の整数変数が与えられます。タスクは、アレイ全体が強力になるように、バイナリアレイの他の要素に電力を供給することができる最小の1を計算することです。要素は、隣接する要素またはベースよりも短い距離内にある他の要素に電力を供給することができます。 このためのさまざまな入出力シナリオを見てみましょう- で- int arr [] ={1、1、0、1、1、0、1}、int base =7 アウト- アレイ全体を強力にするために電力を供給するための最小1は、次のとおりです。1 説明- サイズ7のバイナリ配列と7としての基数の値が与
-
最小数C++のツリー内のすべてのノードに情報を渡すための反復回数
「n」個のノードを持つツリーデータ構造が与えられます。指定されたツリーにはルートノードとそれぞれの子があり、それぞれの子は任意の数であり、さらに子は任意の数の子を持つことができます。タスクは、ツリーのルートノードがツリー内のすべてのノードに情報を渡すために必要な最小反復回数を見つけることです。一度に、ノードはその子の1つに情報を渡すことができ、さらにその子の1つはその子の1つに情報を渡すことができ、その間、ルートノードは別の子に情報を渡すことができます。 このためのさまざまな入出力シナリオを見てみましょう- で- アウト- 最小数ツリー内のすべてのノードに情報を渡すための反復回数