Heim > Artikel > Backend-Entwicklung > Die Anzahl der auf einem Tastentelefon gedrückten Tasten
String in C++ ist eine integrierte Speicherstruktur, die Zahlen, Zeichen und sogar Sonderzeichen enthält. Jeder Zeichenfolge ist eine bestimmte Größe zugeordnet, die durch ihr Längenattribut angegeben wird. Standardmäßig beginnen die Zeichenfolgenpositionen bei 0. Zeichen in Zeichenfolgen können verschiedene Arten von Operationen ausführen -
Neue Zeichen können an das Ende der Zeichenfolge angehängt werden.
Ein Zeichen kann mehrmals an eine Zeichenfolge angehängt werden.
In diesem Artikel entwickeln wir einen Code, der eine Zeichenfolge als Eingabe verwendet und zählt, wie oft eine Taste gedrückt werden muss, um diese Zeichenfolge auf dem Bildschirm der mobilen Tastatur einzugeben. Außerdem wird ein Eingabearray bereitgestellt, das die Anzahl der Tastenanschläge für ein bestimmtes Zeichen angibt. Sehen wir uns das Beispiel unten an, um dieses Thema besser zu verstehen -
Beispiel 1 – str – „abc“
Ausgabe – 6
In der folgenden Beispielzeichenfolge entspricht die Gesamtzahl der Tastenanschläge beispielsweise 1+2+3 = 6.
In diesem Artikel erstellen wir eine Lösung, die jeweils ein Zeichen aus einer Zeichenfolge extrahiert und dann die entsprechenden Tastenanschläge aus dem Eingabearray extrahiert. Jedes Mal wird die Anzahl zur Summenvariablen addiert.
str.length()
Die Methode length() in C++ wird verwendet, um die Anzahl der in einer Zeichenfolge enthaltenen alphanumerischen Zeichen zu zählen. Es kann zum Zählen alphanumerischer Zeichen, Leerzeichen und Zahlen verwendet werden.
Eingabezeichenfolge str akzeptieren
Ein Zähler, der speichert, wie oft jedes Zeichen gedrückt werden muss, um die Zeichenfolge zu generieren.
Verwenden Sie die Methode length(), um die Länge der Zeichenfolge zu berechnen und sie in der len-Variablen zu speichern
Extrahieren Sie jedes Mal das Zeichen an der i-ten Position, Kap.
Der Zähler erhöht die Position um die in der Abbildung angegebene Anzahl.
Führen Sie eine absteigende Schleife aus, die mit dem Zählerwert initialisiert wird, um die extrahierten Zeichen an die Ausgabezeichenfolge anzuhängen.
Der Zählwert verringert sich jedes Mal.
Nachdem die erforderliche Anzahl von Iterationen über die Zeichen durchgeführt wurde, bewegt sich der Zeiger zum nächsten Zeichen.
Der folgende C++-Codeausschnitt wird verwendet, um eine verschlüsselte Zeichenfolge basierend auf einer gegebenen Eingabebeispielzeichenfolge zu erstellen -
//including the required libraries #include <bits/stdc++.h> using namespace std; //storing thr reqd number of times a character should be pressed const int arr[] = { 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 4, 1, 2, 3, 1, 2, 3, 4 }; //return the total number of times the button should be pressed int numkeypresses(string str) { //initialising with count int count = 0; //count the length of string int len = str.length(); // total key presses for (int i = 0; i < len; i++) { char ch = str[i]; count+= arr[ch - 'a']; } cout << "Total number of key presses "<< count; } // Driver code int main() { //input string string str = "tutorials"; cout <<"Input String : "<< str << "\n" ; //calling the function to count the number of times key is pressed numkeypresses(str); return 0; }
Input String − tutorials Total number of key presses 21
Zeichen und ganze Zahlen werden mithilfe von ASCII-Codes manipuliert. Ihre Umwandlung ineinander und voneinander kann leicht simuliert werden. Beispielsweise kann eine Ganzzahl durch Subtrahieren des Zeichens „a“ in das entsprechende Zeichenäquivalent umgewandelt werden. Dies führt zu einer Konvertierung seiner ASCII-Codes ineinander und voneinander, die für numerische Manipulationsoperationen an Zeichenfolgen verwendet werden können.
Das obige ist der detaillierte Inhalt vonDie Anzahl der auf einem Tastentelefon gedrückten Tasten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!