Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C 프로그래밍에서 문장의 각 단어에 대한 ASCII 값의 합

<시간/>

와드의 ASCII 값은 ASCII 표준을 기반으로 한 정수 표현입니다. 이 문제에서는 문장이 주어지고 문장에 있는 각 단어의 ASCII 값의 합을 계산해야 합니다.

이를 위해 우리는 문장의 모든 문자의 ASCII 값을 찾은 다음 더해야 합니다. 이렇게 하면 이 단어에 있는 문자의 ASCII 값 합계가 나옵니다. 모든 단어에 대해 동일한 작업을 수행해야 하며 마지막으로 모든 합계를 더하고 문장의 각 단어에 대한 ASCII 값의 최종 합계를 제공합니다.

예를 들어

the sentence is “I love tutorials point”.

출력 예정

105 438 999 554
2096

예시

#include <iostream>
#include <string>
#include <vector>
using namespace std;
long long int sumcalc (string str, vector < long long int >&arrsum) {
   int l = str.length ();
   int sum = 0;
   long long int bigSum = 0L;
   for (int i = 0; i < l; i++) {
      if (str[i] == ' ') {
         bigSum += sum;
         arrsum.push_back (sum);
         sum = 0;
      }
      else
      sum += str[i];
   }
   arrsum.push_back (sum);
   bigSum += sum;
   return bigSum;
}
int main () {
   string str = "i love tutorials point";
   vector < long long int >arrsum;
   cout<< "The string is "<<str<<endl;
   long long int sum = sumcalc (str, arrsum);
   cout << "Sum of ASCII values: ";
   for (auto x:arrsum)
      cout << x << " ";
   cout << endl << "Total sum -> " << sum;
   return 0;
}

출력

The string is i love tutorials point
Sum of ASCII values: 105 438 999 554
Total sum -> 2096