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

C++でASCII値がk以下およびkより大きいアルファベットの数


任意の長さの文字列が与えられます。タスクは、与えられた整数値k以下のASCII値を持つアルファベットの数を計算することです。

文字AからZのASCII値を以下に示します
A B C D E F G H J K L M N O P Q R S
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83


T U V W X Y Z
84 85 86 87 88 89 90
文字aからzのASCII値を以下に示します
a b c d e f g h i j k l m n o p q r s
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 114


t u v w x y z
116 117 118 119 120 121 122

入力 − str =“ Tutorials PoinT”、int k =100

出力

ASCII値がk未満のアルファベットの数は-6です

ASCII値がk以上のアルファベットの数は-9です

説明

kは100として与えられるので、文字列内の文字のASCII値をチェックします。したがって、TのASCII値は84 <100、uは117> 100、oは111> 100、rは114> 100、iは105> 100、aは97 <100、lは108> 100、sは115です。> 100、Pは80 <100、nは110> 100です。したがって、ASCII値がk未満のアルファベットの総数は6であり、ASCII値がk以上のアルファベットの総数は9です

入力 − str =“ HellO All”、int k =90

出力

ASCII値がk未満のアルファベットの数は-3です

ASCII値がk以上のアルファベットの数は-5です

説明

kは100として与えられるので、文字列内の文字のASCII値をチェックします。したがって、HのASCII値は72 <90、eは101> 90、lは108> 100、lは108> 100、Oは79 <90、Aは65 <90、lは108> 100、lは108です。>100。したがって、ASCII値がk未満のアルファベットの総数は3であり、ASCII値がk以上のアルファベットの総数は5です。

以下のプログラムで使用されているアプローチは次のとおりです

  • 大文字と小文字の文字列とkの整数値を入力します

  • str.length()関数を使用して文字列の長さを計算し、それを関数に渡してさらに処理します。

  • k未満の値を格納する一時変数カウントを作成し、0に設定します

  • 文字列の長さまでiから0までループFORを開始します

  • ループ内で、IF str [i]

  • k未満の値のカウントを返します

  • kより大きい値のカウントを計算するにはsetgreater=len --Less_than(str、k、len);

  • 結果を印刷します。

#include <bits/stdc++.h>
using namespace std;
//Count of alphabets having ASCII value less than and greater than k
int Less_than(string str, int k, int length){
   int count = 0;
   for (int i = 0; i < length; i++){
      if (str[i] < k){
         count++;
      }
   }
   return count;
}
int main(){
   string str = "TuTorials PoinT";
   int k = 100;
   int len = str.length();
   cout<<"Count of alphabets having ASCII value less than k are: "<<Less_than(str,k, len);
   int greater = len - Less_than(str,k, len);
   cout<<"\nCount of alphabets having ASCII value equals or greater than k are: "<<greater;
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます-

Count of alphabets having ASCII value less than k are: 6
Count of alphabets having ASCII value equals or greater than k are: 9

  1. C++で積が​​K未満のすべてのサブシーケンスをカウントします

    このチュートリアルでは、積がK未満のサブシーケンスの数を見つけるプログラムについて説明します。 このために、非負の配列と値kが提供されます。私たちのタスクは、積がk未満の配列内のすべてのサブシーケンスを見つけることです。 例 #include <bits/stdc++.h> using namespace std; //counting subsequences with product //less than k int count_sub(vector<int> &arr, int k){    int n = arr.size();

  2. C++で指定された合計以下の合計を持つ最大合計サブ配列

    この問題では、配列と合計が与えられます。私たちのタスクは、c++で指定された合計以下の合計を持つ最大合計サブ配列を見つけるプログラムを作成することです。 合計が指定された合計以下である、n以下の任意の長さのサブ配列を見つける必要があります。 問題を理解するために例を見てみましょう 入力 −配列={3、5、1、8、2、9}、合計=25 出力 − 25 説明 −合計が25以下のサブ配列は、{5、1、8、2、9}です。 最大合計サブ配列を見つける簡単な方法の1つは、配列を反復処理してすべてのサブ配列の合計を見つけてから、最も近いまたは等しい合計を見つけることです。ただし、この方法では