Average of ASCII values of characters of a given string
Given a string, the task is to find the average of ASCII values of characters in the string.
Examples:
Input: str = “for”
Output: 109
‘f’= 102, ‘o’ = 111, ‘r’ = 114
(102 + 111 + 114)/3 = 109Input: str = “Beginner”
Output: 105
Source: Microsoft Internship Experience
Approach: Start iterating through characters of the string and add their ASCII value to a variable. Finally, divide this sum of ASCII values of characters by the length of the string i.e., the total number of characters in the string.
Implementation:
C++
// C++ code to find average // of ASCII characters #include <bits/stdc++.h> using namespace std; // Function to find average // of ASCII value of chars int averageValue(string s) { int sum_char = 0; // loop to sum the ascii // value of chars for ( int i = 0; i < s.length(); i++) { sum_char += ( int )s[i]; } // Returning average of chars return sum_char / s.length(); } // Driver code int main() { string s = "w3wiki" ; cout << averageValue(s); return 0; } // This code is contributed // by Subhadeep |
Java
// Java code to find average of ASCII characters import java.io.*; class GFG { // Function to find average of ASCII value of chars public static int averageValue(String s) { int sum_char = 0 ; // loop to sum the ascii value of chars for ( int i = 0 ; i < s.length(); i++) { sum_char += ( int )s.charAt(i); } // Returning average of chars return sum_char / s.length(); } // Driver code public static void main(String[] args) { String s = "w3wiki" ; System.out.println(averageValue(s)); } } |
Python 3
# Python 3 code to find average # of ASCII characters # Function to find average # of ASCII value of chars def averageValue(s): sum_char = 0 # loop to sum the ascii # value of chars for i in range ( len (s)): sum_char + = ord (s[i]) # Returning average of chars return sum_char / / len (s) # Driver code if __name__ = = "__main__" : s = "w3wiki" print (averageValue(s)) # This code is contributed by ita_c |
C#
// C# code to find average of // ASCII characters using System; class GFG { // Function to find average of // ASCII value of chars public static int averageValue(String s) { int sum_char = 0; // loop to sum the ascii value of chars for ( int i = 0; i < s.Length; i++) { sum_char += ( int )s[i]; } // Returning average of chars return sum_char / s.Length; } // Driver code public static void Main() { String s = "w3wiki" ; Console.Write(averageValue(s)); } } // This code is contributed // by PrinciRaj1992 |
Javascript
<script> // Javascript code to find average of ASCII characters // Function to find average of ASCII value of chars function averageValue(s) { let sum_char = 0; // loop to sum the ascii value of chars for (let i = 0; i < s.length; i++) { sum_char +=(s[i]).charCodeAt(0); } // Returning average of chars return Math.floor(sum_char / s.length); } // Driver code let s = "w3wiki" ; document.write(averageValue(s)); // This code is contributed by avanitrachhadiya2155 </script> |
PHP
<?php // PHP code to find average // of ASCII characters // Function to find average // of ASCII value of chars function averageValue( $s ) { $sum_char = 0; // loop to sum the ascii // value of chars for ( $i = 0; $i < strlen ( $s ); $i ++) { $sum_char += ord( $s [ $i ]); } // Returning average of chars return (int)( $sum_char / strlen ( $s )); } // Driver code $s = "w3wiki" ; echo averageValue( $s ); // This code is contributed // by 29AjayKumar ?> |
Output
101
complexity Analysis:
- Time Complexity: O(l), where l is the length of the string.
- Auxiliary Space: O(1)
Approach:
- Initialize a variable sum to 0 to store the sum of ASCII value of all characters.
- Traverse the string and for each character, add its ASCII value to sum.
- Calculate the average by dividing sum by the length of the string.
Below is the implementation of the above approach:
C++
#include <bits/stdc++.h> using namespace std; int averageValue(string s) { int sum = accumulate(s.begin(), s.end(), 0, []( int acc, char c) { return acc + ( int )c; }); return sum / s.length(); } int main() { string s = "w3wiki" ; cout << averageValue(s) << endl; return 0; } |
Java
import java.util.*; public class Main { public static int averageValue(String s) { int sum = s.chars().sum(); return sum / s.length(); } public static void main(String[] args){ String s = "w3wiki" ; System.out.println(averageValue(s)); } } |
Python3
def averageValue(s): sum = 0 for c in s: sum + = ord (c) return sum / / len (s) s = "w3wiki" print (averageValue(s)) |
C#
using System; public class Program { // Function to calculate the average ASCII value of characters in a string public static int AverageValue( string s) { int sum = 0; // Initialize a variable to store the sum of ASCII values // Iterate through each character in the input string foreach ( char c in s) { // Add the ASCII value of the character to the sum sum += ( int )c; } // Calculate and return the average value by dividing the sum by the length of the string return sum / s.Length; } public static void Main( string [] args) { string s = "w3wiki" ; // Sample input string int average = AverageValue(s); // Calculate the average ASCII value // Display the result Console.WriteLine(average); } } |
Javascript
// Function that returns the average ASCII value of characters in a string function averageValue(s) { let sum = s.split( '' ).reduce((acc, c) => acc + c.charCodeAt(0), 0); return Math.floor(sum / s.length); } let s = "w3wiki" ; console.log(averageValue(s)); |
Output
101
Time Complexity: O(n), where n is the length of the string.
Auxiliary Space: O(1)
Contact Us