Dada una string, la tarea es reemplazar todas las ocurrencias de pi con 3.14 en la string dada.
Ejemplos :
Input : str = "2 * pi + 3 * pi = 5 * pi" Output : 2 * 3.14 + 3 * 3.14 = 5 * 3.14 Input : str = "pippppiiiipi" Output : 3.14ppp3.14iii3.14 Input : str = "xpix" Output : x3.14x
Enfoque 1:
- Cree una string de salida vacía.
- Atraviese la string desde el índice 0 hasta el penúltimo índice, ya que la longitud de pi es 2.
- Si los alfabetos en el índice actual y (actual+1) forman la palabra «pi», agregue «3.14» a la string de salida.
- De lo contrario, agregue el alfabeto en el índice actual.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ program to replace all // pi in a given string with 3.14 #include <bits/stdc++.h> using namespace std; // Function to replace all occurrences // of pi in a given with 3.14 string replacePi(string input) { string output; int size = input.length(); // Iterate through second last // element of the string for (int i = 0; i < size; ++i) { // If current and current +1 alphabets // form the word 'pi' // append 3.14 to output if (i + 1 < size and input[i] == 'p' and input[i + 1] == 'i') { output += "3.14"; i++; } // Append the current letter else { output += input[i]; } } // Return the output string return output; } // Driver Code int main() { string input = "2 * pi + 3 * pi = 5 * pi"; cout << replacePi(input); return 0; }
Java
// Java program to replace all // pi in a given String with 3.14 class GFG { // Function to replace all occurrences // of pi in a given with 3.14 public String replacePi(String input) { String output = ""; int size = input.length(); // Iterate through second last // element of the String for (int i = 0; i < size; ++i) { // If current and current +1 alphabets // form the word 'pi' // append 3.14 to output if (i + 1 < size && input.charAt(i) == 'p' && input.charAt(i + 1) == 'i') { output += "3.14"; i++; } // Append the current letter else { output += input.charAt(i); } } // Return the output String return output; } // Driver Code public static void main(String args[]) { GFG g = new GFG(); String input = "2 * pi + 3 * pi = 5 * pi"; System.out.println(g.replacePi(input)); } } // This code has been contributed by 29AjayKumar
Python3
# Python program to replace all # pi in a given string with 3.14 # Function to replace all occurrences # of pi in a given with 3.14 def replacePi(input): output =""; size = len(input); # Iterate through second last # element of the string for i in range(size): # If current and current + 1 alphabets # form the word 'pi' # append 3.14 to output if (i + 1 < size and input[i] == 'p' and input[i + 1] == 'i'): output += "3.14"; i+= 1; # Append the current letter else: output += input[i]; # Return the output string return output; # Driver Code input = "2 * pi + 3 * pi = 5 * pi"; print(replacePi(input)); # This code contributed by PrinciRaj1992
C#
// C# program to replace all // pi in a given string with 3.14 using System; // Function to replace all occurrences // of pi in a given with 3.14 class gfg { public string replacePi(string input) { string output = ""; int size = input.Length; // Iterate through second last // element of the string for (int i = 0; i < size; ++i) { // If current and current +1 alphabets // form the word 'pi' // append 3.14 to output if (i + 1 < size && input[i] == 'p' && input[i + 1] == 'i') { output += "3.14"; i++; } // Append the current letter else { output += input[i]; } } // Return the output string return output; } } // Driver Code class geek { public static int Main() { gfg g = new gfg(); string input = "2 * pi + 3 * pi = 5 * pi"; Console.WriteLine(g.replacePi(input)); return 0; } } // This code is contributed by Soumik
Javascript
<script> // JavaScript program to replace all // pi in a given string with 3.14 // Function to replace all occurrences // of pi in a given with 3.14 function replacePi(input) { var output = ""; var size = input.length; // Iterate through second last // element of the string for (var i = 0; i < size; ++i) { // If current and current +1 alphabets // form the word 'pi' // append 3.14 to output if (i + 1 < size && input[i] === "p" && input[i + 1] === "i") { output += "3.14"; i++; } // Append the current letter else { output += input[i]; } } // Return the output string return output; } // Driver Code var input = "2 * pi + 3 * pi = 5 * pi"; document.write(replacePi(input)); </script>
Producción:
2 * 3.14 + 3 * 3.14 = 5 * 3.14
Complejidad de tiempo : O(N), donde N es la longitud de la string dada.
Enfoque 2: (en Java)
para reemplazar todas las ocurrencias de PI a 3.14, use el método replaceAll() de Java String Class.
Java
public class ReplacePI { public static void main(String[] args) { // Declare a String String expression = "2 * pi + 3 * pi = 5 * pi"; // Call replaceAll() method to replace PI to 3.14 expression = expression.replaceAll("pi", "3.14"); // Print the result System.out.println(expression); } }
Producción:
2 * 3.14 + 3 * 3.14 = 5 * 3.14
Publicación traducida automáticamente
Artículo escrito por imdhruvgupta y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA