Clase 7: Strings · #include #include using namespace std; int main (){// programa principal}...

29
Clase 7: Strings Profesora de Cátedra: Niñas Pro

Transcript of Clase 7: Strings · #include #include using namespace std; int main (){// programa principal}...

Page 1: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Clase 7: Strings

Profesora de Cátedra:Niñas Pro

Page 2: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Repaso

● Declarar variables tipo string: string nombre = “ninaspro”;● Leer strings de manera individual: cin >> nombre;● Leer strings con espacios: getline (cin, nombre);● Imprimir strings: cout << “Nombre:” << nombre << endl ;

Page 3: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Temario de la clase

1. Operadores de Strings

2. Funciones de Strings

3. Ejemplos

Page 4: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

#include <iostream>#include <string>

using namespace std;

int main (){// programa principal

}

Agregamos la librería

string para que nuestro

programa pueda manipular Strings

Page 5: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Operadores de Strings

Page 6: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Operaciones

+Concatenar

== != < <=Igual Diferente Menor Menor o

igual

Page 7: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo

int main (){ string var1 = "alpha"; string var2 = "beta"; cout << var1 + var2 << endl;

var1 = "3"; var2 = "12"; cout << var1 + var2 << endl;

return 0;}

¿Qué mostrará en pantalla?

Page 8: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo(1) alphabeta(2) 312

int main (){ string var1 = "alpha"; string var2 = "beta"; cout << var1 + var2 << endl; // (1)

var1 = "3"; var2 = "12"; cout << var1 + var2 << endl; // (2)

return 0;}

Page 9: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo

int main (){ string var1, var2; getline(cin, var1); getline(cin, var2); if (var1==var2) cout << "var1 y var2 son iguales\n"; if (var1!=var2) cout << "var1 y var2 no son iguales\n"; if (var1< var2) cout << "var1 es menor que var2\n"; if (var1> var2) cout << "var1 es mayor que var2\n"; if (var1<=var2) cout << "var1 es menor o igual que var2\n"; if (var1>=var2) cout << "var1 es mayor o igual que var2\n"; return 0;}

¿Con qué valores se ejecutaría

cada if?

Page 10: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Strings con números, letras (en mayúsculas

o minúsculas)?

var1 == var2 "ninaspro" "ninaspro"

var1 != var2 "ninaspro" "NinasPro"

var1 < var2 "Programar" "programar"

var1 <= var2 "2018" "Programa"

var1 > var2 "Cecilia" "Barbara"

var1 >= var2 "Andrea" "Ana"

Condición var1 var2

Page 11: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Funciones de Strings

Page 12: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Funciones de capacidad

size/length

Nos entrega el tamaño del String.

resize

Modifica el tamaño del String a uno de n caracteres.

clear

Borra el contenido del String

Page 13: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

int main (){ string var1= "Paralelepipedo"; cout<<var1<<" tamano "<<var1.size()<<endl; var1.resize(4); cout<<var1<<" tamano "<<var1.size()<<endl; var1.clear(); cout<<var1<<" tamano "<<var1.size()<<endl;}

¿Qué mostrará

en pantalla?

Ejemplo

Page 14: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo

int main (){ string var1= "Paralelepipedo"; cout<<var1<<" tamano "<<var1.size()<<endl; // (1)

var1.resize(4); cout<<var1<<" tamano "<<var1.size()<<endl; // (2)

var1.clear(); cout<<var1<<" tamano "<<var1.size()<<endl; // (3)}

(1) Paralelepipedo tamano 14(2) Para tamano 4 (3) tamano 0

Page 15: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Funciones de mutación

insert

Inserta caracteres adicionales

erase

Borra caracteres

replace

Reemplaza caracteres

append

Añade caracteres

Page 16: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemploint main(){

string var2 = "Hola, ¿Como estan?";cout << var2 << endl;

var2.insert(4," Chiquillas");cout << var2 << endl;

var2.erase(15);cout << var2 << endl;

var2.replace(5,10,"Ninas Pro");cout << var2 << endl;

var2.append(", que tengan un buen dia!");cout << var2 << endl;return 0;

}

¿Qué mostrará

en pantalla?

Page 17: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo

int main(){string var2 = "Hola, ¿Como estan?";cout << var2 << endl; // (1)var2.insert(4," Chiquillas");cout << var2 << endl; // (2)var2.erase(15);cout << var2 << endl; // (3)var2.replace(5,10,"Ninas Pro");cout << var2 << endl; // (4)var2.append(", que tengan un buen dia!");cout << var2 << endl; // (5)return 0;

}

(1) Hola, ¿Como estan?(2) Hola Chiquillas, ¿Como estan?(3) Hola Chiquillas(4) Hola Ninas Pro(5) Hola Ninas Pro, que tengan un buen dia!

Page 18: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Funciones de mutación

swap

Intercambia el valor de dos variables string

pop_back

Elimina el último caracter

push_back

Añade caracteres al final del string

assign

Le asigna un nuevo valor a una variable string

Page 19: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo

int main(){string var1 = "Hola NinasProgramadoras!";string var2 = "Programar es divertido :)";

var2.swap(var1);cout << var1 << endl;cout << var2 << endl;

var2.assign(var1);cout << var1 << endl;

var1.assign(var2,10,13);cout << var1 << endl;

return 0;}

¿Qué mostrará

en pantalla?

Page 20: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo

int main(){string var1 = "Hola NinasProgramadoras!";string var2 = "Programar es divertido :)";var2.swap(var1);cout << var1 << endl; // (1)cout << var2 << endl; // (2)var2.assign(var1);cout << var2 << endl; // (3)var1.assign(var2,10,13);cout << var1 << endl; // (4)return 0;

}

(1) Programar es divertido :)(2) Hola NinasProgramadoras!(3) Programar es divertido :)(4) es divertido

Page 21: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo

int main(){string var1 = "Hoy vamos a programar?";cout << var1 << endl;

var1.pop_back();cout << var1 << endl;

var2.push_back(`!´);cout << var1 << endl;

return 0;}

¿Qué mostrará

en pantalla?

Page 22: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo(1) Hoy vamos a programar?(2) Hoy vamos a programar(3) Hoy vamos a programar!

int main(){string var1 = "Hoy vamos a programar?";cout << var1 << endl; // (1)

var1.pop_back();cout << var1 << endl; // (2)

var2.push_back(`!´);cout << var1 << endl; // (3)

return 0;}

Page 23: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Funciones de operación

copy

Genera una copia de un string

find

Entrega la posición donde se encuentra un contenido dentro del string

substr

Genera un sub string

compare

Entrega 0 si los dos strings son exactamente iguales; de lo contrario, entrega un número distinto a cero

Page 24: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemploint main(){

string var1 = "Mis amigas Barbara y Alejandra";cout << var1 << endl;

String var2 = var1.substr(11,7);cout << var2 << endl;

int pos = var1.find(“Alejandra”);cout << “Alejandra se encuentra en la pos: ” << pos << endl;

int i = var2.compare(“Barbara”);cout << i << endl; strcpy(var2,“Barbara”);int j = var2.compare(“Barbara”);cout << j << endl;

return 0 }

¿Qué mostrará

en pantalla?

Page 25: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo

int main(){string var1 = "Mis amigas Barbara y Alejandra";cout << var1 << endl; //(1)

String var2 = var1.substr(11,7);cout << var2 << endl; //(2)

int pos = var1.find(“Alejandra”);cout << “Alejandra se encuentra en la pos: ” << pos << endl; //(3)

int i = var2.compare(“Barbara”);cout << i << endl; //(4) strcpy(var2,“Barbara”);int j = var2.compare(“Barbara”);cout << j << endl; //(5)return 0

}

(1) “Mis amigas Barbara y Alejandra”

(2) Barbara(3) 21(4) !=0(5) 0

Page 26: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Funciones de operación

find_first_of

Encuentra un caracter en un string

find_last_of

Encuentra un caracter de un string buscando desde el final

find_first_not_of

Encuentra un caracter distinto al que se indica

find_last_not_of

Encuentra un caracter distinto al indicado, buscando desde el final

Page 27: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo

int main(){

string var1 = "Alguien practico en codeforces?";

cout << var1.find_first_of("aeiou") << '\n'; cout << var1.find_last_of("aeiou") << '\n'; cout << var1.find_first_not_of("aeiou") << '\n'; cout << var1.find_last_not_of("aeiou") << '\n';

return 0;}

¿Qué mostrará

en pantalla?

Page 28: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Ejemplo(1) 3(2) 28(3) 0(4) 30

int main(){

string var1 = "Alguien practico en codeforces?";

cout << var1.find_first_of("aeiou") << '\n'; // (1) cout << var1.find_last_of("aeiou") << '\n'; // (2) cout << var1.find_first_not_of("aeiou") << '\n';//(3) cout << var1.find_last_not_of("aeiou") << '\n'; //(4)

return 0;}

Page 29: Clase 7: Strings · #include  #include  using namespace std; int main (){// programa principal} Agregamos la librería string para que nuestro programa

Créditos diseños

● Macarena Ibsen, diseñadora gráfica, Branding NiñasPRO.

● Íconos de Freepik usados en estas diapositivas,

licenciados bajo Creative Commons BY 3.0.

https://www.flaticon.com/authors/freepik