SlideShare una empresa de Scribd logo
1 de 6
Descargar para leer sin conexión
Modelo 8 : Invertir una cadena1.
Modelo 9: Invertir cadena desde el centro2.
Modelo 10: Eliminar un carácter de la cadena3.
Modelo 11: La palabra mas larga de una oracion4.
Cadenas con String
Tipo String1.
Mayusculas y Minusculas
String S = 's';
Edit1->Text = S.UpperCase();
String String1 = "[Borland C++ Builder]";
Edit1->Text = String1.LowerCase();
Asignar String cadena = 'Hola mundo'
Longitud cadena cadena.Length()
Cortar una cadena cadena.SubString(posicion,NroCaracteres)
Ultimo carácter cadena.LastChar()
Obtener el carácter 2do cadena[2]
Eliminar caracteres cad.Delete(posicion,nroElementos);
Eliminar los blancos a ambos lados
de la cadena
cad.Trim()
Averiguar si la cadena es vacia cad.IsEmpty()
Concatenar String cadena="mundo";
String cad="hola";
String res=cadena.LastChar()+cad;
Posiciones validas Pos Inicio = 1
Pos Final = Longitud de la cadena
Operaciones Basicas
Tipo AnsiString1.
Suma
Comparar
AnsiString Nombre = "Paul ";
AnsiString Apellido = "Lombard";
AppendStr(Nombre, Apellido);
Edit1->Text = Nombre;
Ejemplos Cadenas: step by step
Apuntes Recur_1 página 1
Comparar
if(String1.AnsiCompareIC(String2) < 0)
Edit3->Text = "True";
else if(String1.AnsiCompareIC(String2) > 0)
Edit3->Text = "False";
else
Edit3->Text = "Equal";
}
Ultimo Caracter
String S = Edit1->Text;
Edit2->Text = S.AnsiLastChar();
AnsiString Country("United States of America");
AnsiString After;
After = Country.Delete(14, 11);
AnsiString String1 = Edit1->Text;
AnsiString String2 = Edit2->Text;
Pegado de <http://www.functionx.com/bcb/topics/strings.htm>
Apuntes Recur_1 página 2
Algoritmo para invertir una cadena de caracteres
Análisis del Algoritmo1.
hola
Para invertir una cadena
Tipo: Función o Procesoi.
Tipos de datos que entran1)
Tipo de dato que retorna si es Función.2)
Parámetrosii.
Perfil del método: Identificara.
String cad = InvCad ( String cadena)
Tamaño de la cadena = 1 --> Este es el caso base1)
length(cadena)=1
Caso Base : El algoritmo no se llama a si mismo. Permite que el
algoritmo termine en algún momento
i.
Caso General : El método se llama a si mismoii.
Análisis de casosb.
InvCad Inv{
cadena
InvCad(cadena.SubString
(1,cadena.Length()-1))
cadena.Length()=1 ;
cadena.Length()>1
Codificación en C++c.
String InvCad(String cadena){
String res;
if(cadena.Length()==1){
return cadena;
}else{
res=InvCad(cadena.SubString(1,cadena.Length()-1));
res=cadena.LastChar()+res;
return res;
}
}
Validación del algoritmo : Observar si termina y resuelve el problemad.
Diseño del Algoritmo2.
Metodología:
Modelo 8: Invertir una cadena
viernes, 21 de marzo de 2014 11:32
Apuntes Recur_1 página 3
Validación del algoritmo : Observar si termina y resuelve el problemad.
Secuenciación en clase:
Mostrar la pila que se forma por cada llamada recursiva. Esta sirve para ver
que ahí se guarda (dirección de memoria + valor del parámetros)
1.
Aquí se refleja lo que pasa en cada RETURN2.
Comienza desde el caso base el des Apilado.3.
Apuntes Recur_1 página 4
Algoritmo para encontrar la palabra más larga de una oraciòn
Análisis del Algoritmo1.
Hola mundo xxx 1 ==> mundo
Para la frase
Tipo: Función o Procesoi.
Tipos de datos que entran1)
Tipo de dato que retorna si es Función.2)
Parámetrosii.
Perfil del método: Identificara.
String cadena = BusLarga ( String cad, String &clon)
Tamaño de la cadena = 0 --> Este es el caso base1)
length(cad)=0
Caso Base : El algoritmo no se llama a si mismo. Permite que el algoritmo termine
en algún momento
i.
Caso General : El método se llama a si mismoii.
Análisis de casosb.
BusLarga (cad,clon) { cad cad.Length() =0;
BusLarga(cad.Trim,clon) cad.Length()>0;
Codificación en C++c.
void __fastcall TForm1::PalabraLarga1Click(TObject *Sender)
{
String cad=InputBox("PALABRA LARGA","Introduzca una cadena de palabras","0");
int tam=0;
String car="";
String larga=BusLarga(cad,car);
ShowMessage(larga);
}
String ObtPalabra(String cad,int pos){
String x;
if (pos >cad.Length()) return cad;
else{
x=cad[pos];
x=x.Trim() ;
Diseño del Algoritmo2.
Metodología:
Modelo 11: Palabra mas larga de una oración
viernes, 21 de marzo de 2014 11:32
Apuntes Recur_1 página 5
x=x.Trim() ;
String cad1;
if (x.IsEmpty()) cad1=cad.SubString(1,pos-1);
else{
cad1=ObtPalabra(cad,pos+1);
}
return cad1;
}
};
String BusLarga(String cad,String &clon){
if(cad.Length()==0) return cad ;
else{
int pos=1;
String pal=ObtPalabra(cad,pos);
if(pal.Length()>clon.Length())clon=pal;
cad=cad.Delete(1,pos);
cad=BusLarga(cad.TrimLeft(),clon);
return clon;
}
}
Validación del algoritmo : Observar si termina y resuelve el problemad.
Secuenciación en clase:
Mostrar la pila que se forma por cada llamada recursiva. Esta sirve para ver que ahí se guarda
(dirección de memoria + valor del parámetros)
1.
Aquí se refleja lo que pasa en cada RETURN2.
Comienza desde el caso base el des Apilado.3.
Apuntes Recur_1 página 6

Más contenido relacionado

La actualidad más candente

Funciones de ostia puta
Funciones de ostia putaFunciones de ostia puta
Funciones de ostia putahtmrk
 
Introducción a Swift
Introducción a SwiftIntroducción a Swift
Introducción a Swiftbetabeers
 
Presentación mates
Presentación matesPresentación mates
Presentación matesraqalbiach
 
6 Upv Solo Pruebas 2009
6 Upv Solo Pruebas 20096 Upv Solo Pruebas 2009
6 Upv Solo Pruebas 2009Pepe
 
Funciones estadísticas
Funciones estadísticasFunciones estadísticas
Funciones estadísticasgccori
 
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)José Antonio Sandoval Acosta
 
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)Richard Eliseo Mendoza Gafaro
 
Fourier
FourierFourier
FourierDC FCP
 
La integral de fourier
La integral de fourierLa integral de fourier
La integral de fourierJuan Sanango
 
13 ramiicacion y acotacion
13 ramiicacion y acotacion13 ramiicacion y acotacion
13 ramiicacion y acotacionJulio Pari
 
Concepto de integral indefinida
Concepto de integral indefinida Concepto de integral indefinida
Concepto de integral indefinida Jose R Padrón
 
Actividad Obligatoria N°1 - Intro. a la Informática
Actividad Obligatoria N°1 - Intro. a la InformáticaActividad Obligatoria N°1 - Intro. a la Informática
Actividad Obligatoria N°1 - Intro. a la InformáticaPablo Agustin Novillo Audicio
 

La actualidad más candente (20)

Funciones de ostia puta
Funciones de ostia putaFunciones de ostia puta
Funciones de ostia puta
 
Tema iiderivadas
Tema iiderivadasTema iiderivadas
Tema iiderivadas
 
Infijo A Postfijo
Infijo A PostfijoInfijo A Postfijo
Infijo A Postfijo
 
Introducción a Swift
Introducción a SwiftIntroducción a Swift
Introducción a Swift
 
Presentación mates
Presentación matesPresentación mates
Presentación mates
 
6 Upv Solo Pruebas 2009
6 Upv Solo Pruebas 20096 Upv Solo Pruebas 2009
6 Upv Solo Pruebas 2009
 
Funciones estadísticas
Funciones estadísticasFunciones estadísticas
Funciones estadísticas
 
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
 
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
 
Dominio
DominioDominio
Dominio
 
Clips parte2x
Clips parte2xClips parte2x
Clips parte2x
 
Fourier
FourierFourier
Fourier
 
Ordenamiento QuickSort
Ordenamiento QuickSortOrdenamiento QuickSort
Ordenamiento QuickSort
 
La integral de fourier
La integral de fourierLa integral de fourier
La integral de fourier
 
Greenfoot 10
Greenfoot 10Greenfoot 10
Greenfoot 10
 
Convolución
ConvoluciónConvolución
Convolución
 
13 ramiicacion y acotacion
13 ramiicacion y acotacion13 ramiicacion y acotacion
13 ramiicacion y acotacion
 
Concepto de integral indefinida
Concepto de integral indefinida Concepto de integral indefinida
Concepto de integral indefinida
 
Python para principiantes
Python para principiantesPython para principiantes
Python para principiantes
 
Actividad Obligatoria N°1 - Intro. a la Informática
Actividad Obligatoria N°1 - Intro. a la InformáticaActividad Obligatoria N°1 - Intro. a la Informática
Actividad Obligatoria N°1 - Intro. a la Informática
 

Similar a Cadenas String en C (20)

Fundamentos de programación librería string C++
Fundamentos de programación librería string C++Fundamentos de programación librería string C++
Fundamentos de programación librería string C++
 
08 strings o cadenas
08 strings o cadenas08 strings o cadenas
08 strings o cadenas
 
Separata java script
Separata java scriptSeparata java script
Separata java script
 
FP-Unidad2-Sesión02.pdf
FP-Unidad2-Sesión02.pdfFP-Unidad2-Sesión02.pdf
FP-Unidad2-Sesión02.pdf
 
Uso de apis en java
Uso de apis en javaUso de apis en java
Uso de apis en java
 
06 - Arrays y matrices en lenguaje C
06 - Arrays y matrices en lenguaje C06 - Arrays y matrices en lenguaje C
06 - Arrays y matrices en lenguaje C
 
Uso de apis en java
Uso de apis en javaUso de apis en java
Uso de apis en java
 
Java básico
Java  básicoJava  básico
Java básico
 
2 Introducción al lenguaje Ruby
2 Introducción al lenguaje Ruby2 Introducción al lenguaje Ruby
2 Introducción al lenguaje Ruby
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Tipos de Datos Abstractos.
Tipos de Datos Abstractos.Tipos de Datos Abstractos.
Tipos de Datos Abstractos.
 
9_U2_S3_Cadenas.pdf
9_U2_S3_Cadenas.pdf9_U2_S3_Cadenas.pdf
9_U2_S3_Cadenas.pdf
 
Poo
PooPoo
Poo
 
Cadena de caracteres
Cadena de caracteresCadena de caracteres
Cadena de caracteres
 
Ruby 01
Ruby 01Ruby 01
Ruby 01
 
Ruby
Ruby Ruby
Ruby
 
Tema 3 xml processing ap is
Tema 3   xml processing ap isTema 3   xml processing ap is
Tema 3 xml processing ap is
 
Sesion1 Php Basico
Sesion1 Php BasicoSesion1 Php Basico
Sesion1 Php Basico
 
Resultset
ResultsetResultset
Resultset
 
Introducción a la programación y la informática. Tema 6
Introducción a la programación y la informática. Tema 6Introducción a la programación y la informática. Tema 6
Introducción a la programación y la informática. Tema 6
 

Más de Mary Dunnia Lopez N. (20)

Cap2.1
Cap2.1Cap2.1
Cap2.1
 
Cap7 2 matrices
Cap7 2 matricesCap7 2 matrices
Cap7 2 matrices
 
Cap7 1 vectores
Cap7 1 vectoresCap7 1 vectores
Cap7 1 vectores
 
Guia lab1
Guia lab1Guia lab1
Guia lab1
 
Cap4.2 visual basic.net
Cap4.2 visual basic.netCap4.2 visual basic.net
Cap4.2 visual basic.net
 
Cap5 1.1 tutor2 la_variable
Cap5 1.1 tutor2 la_variableCap5 1.1 tutor2 la_variable
Cap5 1.1 tutor2 la_variable
 
Cap5 1.4 tutor3 algoritmos repetititvos
Cap5 1.4 tutor3 algoritmos repetititvosCap5 1.4 tutor3 algoritmos repetititvos
Cap5 1.4 tutor3 algoritmos repetititvos
 
Cap5 1.3 tutor3 algoritmos condicionales
Cap5 1.3 tutor3 algoritmos condicionalesCap5 1.3 tutor3 algoritmos condicionales
Cap5 1.3 tutor3 algoritmos condicionales
 
Cap5 1.2 tutor2 algoritmos secuenciales
Cap5 1.2 tutor2 algoritmos secuencialesCap5 1.2 tutor2 algoritmos secuenciales
Cap5 1.2 tutor2 algoritmos secuenciales
 
Vectores
VectoresVectores
Vectores
 
Matrices
MatricesMatrices
Matrices
 
Cap1.3 tutor recursividad matriz
Cap1.3 tutor recursividad   matrizCap1.3 tutor recursividad   matriz
Cap1.3 tutor recursividad matriz
 
Cap1.2 tutor recursividad vectores
Cap1.2 tutor recursividad   vectoresCap1.2 tutor recursividad   vectores
Cap1.2 tutor recursividad vectores
 
Cap30 intro
Cap30 introCap30 intro
Cap30 intro
 
Cap32 rep num
Cap32 rep numCap32 rep num
Cap32 rep num
 
Cap31 sist num
Cap31 sist numCap31 sist num
Cap31 sist num
 
Cap2
Cap2Cap2
Cap2
 
Contar digitos
Contar digitosContar digitos
Contar digitos
 
Cap1.1 recursividad
Cap1.1 recursividadCap1.1 recursividad
Cap1.1 recursividad
 
Cap0 2
Cap0 2Cap0 2
Cap0 2
 

Último

30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 

Último (20)

Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 

Cadenas String en C

  • 1. Modelo 8 : Invertir una cadena1. Modelo 9: Invertir cadena desde el centro2. Modelo 10: Eliminar un carácter de la cadena3. Modelo 11: La palabra mas larga de una oracion4. Cadenas con String Tipo String1. Mayusculas y Minusculas String S = 's'; Edit1->Text = S.UpperCase(); String String1 = "[Borland C++ Builder]"; Edit1->Text = String1.LowerCase(); Asignar String cadena = 'Hola mundo' Longitud cadena cadena.Length() Cortar una cadena cadena.SubString(posicion,NroCaracteres) Ultimo carácter cadena.LastChar() Obtener el carácter 2do cadena[2] Eliminar caracteres cad.Delete(posicion,nroElementos); Eliminar los blancos a ambos lados de la cadena cad.Trim() Averiguar si la cadena es vacia cad.IsEmpty() Concatenar String cadena="mundo"; String cad="hola"; String res=cadena.LastChar()+cad; Posiciones validas Pos Inicio = 1 Pos Final = Longitud de la cadena Operaciones Basicas Tipo AnsiString1. Suma Comparar AnsiString Nombre = "Paul "; AnsiString Apellido = "Lombard"; AppendStr(Nombre, Apellido); Edit1->Text = Nombre; Ejemplos Cadenas: step by step Apuntes Recur_1 página 1
  • 2. Comparar if(String1.AnsiCompareIC(String2) < 0) Edit3->Text = "True"; else if(String1.AnsiCompareIC(String2) > 0) Edit3->Text = "False"; else Edit3->Text = "Equal"; } Ultimo Caracter String S = Edit1->Text; Edit2->Text = S.AnsiLastChar(); AnsiString Country("United States of America"); AnsiString After; After = Country.Delete(14, 11); AnsiString String1 = Edit1->Text; AnsiString String2 = Edit2->Text; Pegado de <http://www.functionx.com/bcb/topics/strings.htm> Apuntes Recur_1 página 2
  • 3. Algoritmo para invertir una cadena de caracteres Análisis del Algoritmo1. hola Para invertir una cadena Tipo: Función o Procesoi. Tipos de datos que entran1) Tipo de dato que retorna si es Función.2) Parámetrosii. Perfil del método: Identificara. String cad = InvCad ( String cadena) Tamaño de la cadena = 1 --> Este es el caso base1) length(cadena)=1 Caso Base : El algoritmo no se llama a si mismo. Permite que el algoritmo termine en algún momento i. Caso General : El método se llama a si mismoii. Análisis de casosb. InvCad Inv{ cadena InvCad(cadena.SubString (1,cadena.Length()-1)) cadena.Length()=1 ; cadena.Length()>1 Codificación en C++c. String InvCad(String cadena){ String res; if(cadena.Length()==1){ return cadena; }else{ res=InvCad(cadena.SubString(1,cadena.Length()-1)); res=cadena.LastChar()+res; return res; } } Validación del algoritmo : Observar si termina y resuelve el problemad. Diseño del Algoritmo2. Metodología: Modelo 8: Invertir una cadena viernes, 21 de marzo de 2014 11:32 Apuntes Recur_1 página 3
  • 4. Validación del algoritmo : Observar si termina y resuelve el problemad. Secuenciación en clase: Mostrar la pila que se forma por cada llamada recursiva. Esta sirve para ver que ahí se guarda (dirección de memoria + valor del parámetros) 1. Aquí se refleja lo que pasa en cada RETURN2. Comienza desde el caso base el des Apilado.3. Apuntes Recur_1 página 4
  • 5. Algoritmo para encontrar la palabra más larga de una oraciòn Análisis del Algoritmo1. Hola mundo xxx 1 ==> mundo Para la frase Tipo: Función o Procesoi. Tipos de datos que entran1) Tipo de dato que retorna si es Función.2) Parámetrosii. Perfil del método: Identificara. String cadena = BusLarga ( String cad, String &clon) Tamaño de la cadena = 0 --> Este es el caso base1) length(cad)=0 Caso Base : El algoritmo no se llama a si mismo. Permite que el algoritmo termine en algún momento i. Caso General : El método se llama a si mismoii. Análisis de casosb. BusLarga (cad,clon) { cad cad.Length() =0; BusLarga(cad.Trim,clon) cad.Length()>0; Codificación en C++c. void __fastcall TForm1::PalabraLarga1Click(TObject *Sender) { String cad=InputBox("PALABRA LARGA","Introduzca una cadena de palabras","0"); int tam=0; String car=""; String larga=BusLarga(cad,car); ShowMessage(larga); } String ObtPalabra(String cad,int pos){ String x; if (pos >cad.Length()) return cad; else{ x=cad[pos]; x=x.Trim() ; Diseño del Algoritmo2. Metodología: Modelo 11: Palabra mas larga de una oración viernes, 21 de marzo de 2014 11:32 Apuntes Recur_1 página 5
  • 6. x=x.Trim() ; String cad1; if (x.IsEmpty()) cad1=cad.SubString(1,pos-1); else{ cad1=ObtPalabra(cad,pos+1); } return cad1; } }; String BusLarga(String cad,String &clon){ if(cad.Length()==0) return cad ; else{ int pos=1; String pal=ObtPalabra(cad,pos); if(pal.Length()>clon.Length())clon=pal; cad=cad.Delete(1,pos); cad=BusLarga(cad.TrimLeft(),clon); return clon; } } Validación del algoritmo : Observar si termina y resuelve el problemad. Secuenciación en clase: Mostrar la pila que se forma por cada llamada recursiva. Esta sirve para ver que ahí se guarda (dirección de memoria + valor del parámetros) 1. Aquí se refleja lo que pasa en cada RETURN2. Comienza desde el caso base el des Apilado.3. Apuntes Recur_1 página 6