-¿Te unes?- ㊜Suscribete!!!

Problemas Resuelto Recursividad Programación II - Capitulo 1 📖

Hola ,queridos lectores y programadores 😎 he creado esta sección de problemas resueltos para compartir algunos ejercicios, para ello usaremos el lenguaje c++ con IDE C++Builder
✎ Problemas resuelto de la materia programación II


Problema 1:
Escribir una función que devuelva true si un vector contiene únicamente cadenas palíndromas. Una cadena es palíndroma si se leen igual de izquierda a derecha como de derecha a izquierda .(20 Ptos)
Ej.1 v["oso", "oruro", "reconocer", "arenera"] ==>  true
Ej2. v["rotor", "aibofobia","sala", "ala"] ==>false

La respuesta debe estar máximo en dos funciones 
void InvertirCad(String &Cad){ byte L=Cad.Length(); if ((L<=1)||(Cad=="")){ Cad=Cad; }else { String c=Cad.SubString(1,2); Cad.Delete(1,2); InvertirCad(Cad); Cad=Cad+c[2]+c[1]; } } bool Palíndromas(TStringGrid *Vec,byte Dim){ Boolean B=true; if (Dim>=1) { B=Palíndromas(Vec,Dim-1); String C1=Vec->Cells[Dim-1][0]; String C2=Vec->Cells[Dim-1][0]; InvertirCad(C2); if (C1!=C2){ B=false; } } return B; } void __fastcall TForm1::Palabraspalndromas1Click(TObject *Sender) { Boolean B=Palíndromas(SGVector,SGVector->ColCount); if (B==true){ TSalida->Text="true"; }else TSalida->Text="false"; }























 ⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫
Problema 2:
Escribir una función que devuelva una cadena formada por los dígitos de un número repetidos la cantidad de veces que el dígito representa. Máximo 2 funciones.

Ej. CadDeDigitos(5021)=>"55555221"


String repetido(Cardinal n, Cardinal v) { String cad; if (n == 0) cad = ""; else cad = repetido(n - 1, v) + String(v); return cad; } String CadDeDigitos(Cardinal n) { String cad; if (n < 10) cad = repetido(n, n); else { Byte dig = n % 10; n = n / 10; cad = CadDeDigitos(n) + repetido(dig, dig); } return cad; }

 













 
String digitos(byte d,byte d2){ String s; if (d==0) { s=""; }else{ s=digitos(d-1,d2); s=s+d2; } return s; } String examen112(int n){ String s; if (n>0) { byte d=n%10; s=examen112(n/10); s=s+digitos(d,d); }else{ s=""; } return s; } void __fastcall TForm1::ndigacadena1Click(TObject *Sender) { Edit3->Text =examen112(StrToInt(Edit2->Text)); }




















⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫
Problema 3:
Escribir procesos (pueden escribir hasta 2 procesos) para cargar una matriz cuadrada de la siguiente forma:
Amxm
5
6
7
8
9


void aux_diag(TStringGrid * m, Cardinal f, Cardinal c, Cardinal v) { if (f > 0 && c <= m->ColCount) { m->Cells[c - 1][f - 1] = v; aux_diag(m, f - 1, c + 1, v); } } //Aqui entra el valor de v, v = 9 void diagonales(TStringGrid* m, Cardinal f, Cardinal c, Cardinal v) { if (c > 0 && f > 0) { aux_diag(m, f, c, v); if (c == 1) diagonales(m, f - 1, c, v - 1); else diagonales(m, f, c - 1, v - 1); } }














 

void matrizcol(TStringGrid* m,byte fa,byte fb,byte ca,byte cb,byte k){ byte n=cb-ca+1; if (n>0) { m->Cells [ca][fa]=k; matrizcol(m,fa,fb,ca+1,cb,k+1); } } void matrizcol2(TStringGrid* m,byte fa,byte fb,byte ca,byte cb,byte &k){ byte n=fb-fa+1; if (n>0) { matrizcol(m,fa,fb,ca,cb,k); k++; matrizcol2(m,fa+1,fb,ca,cb,k); } } void __fastcall TForm1::matrizcortes1Click(TObject *Sender) { byte m=StrToInt(InputBox("","dimencion","")); StringGrid1->ColCount = m; StringGrid1->RowCount =m; byte k=1; matrizcol2(StringGrid1,0,m-1,0,m-1,k); }


















⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫

Problema 4:
Escribir una función que devuelva una cadena formada por los dígitos de un número repetidos la cantidad de veces que el dígito representa. Máximo 2 funciones.

Ej. CadDeDigitos(5021)=>"55555221"
String digitos(byte d,byte d2){ String s; if (d==0) { s=""; }else{ s=digitos(d-1,d2); s=s+d2; } return s; } String cantidadveces (int n){ String s; if (n>0) { byte d=n%10; s=cantidadveces (n/10); s=s+digitos(d,d); }else{ s=""; } return s; } void __fastcall TForm1::ndigacadena1Click(TObject *Sender) { Edit3->Text =cantidadveces (StrToInt(Edit2->Text)); }
















 


⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫
Problema 5:

Escriba una función recursiva para generar la siguiente serie N elementos:
2,5,10,17,26

void GenerarSerie(TStringGrid *grid, unsigned int pos, unsigned int a,unsigned int b){ if (pos==grid->ColCount) { return; } else { grid->Cells[pos][0]=b; b=b+a; a=a+2; GenerarSerie(grid,pos+1,a,b); } } void __fastcall TForm1::Button1Click(TObject *Sender) { byte n; n=Edit1->Text.ToInt(); Grid1->RowCount=1; Grid1->ColCount=n; Grid1->FixedCols=0; Grid1->FixedRows=0; GenerarSerie(Grid1,0,3,2); }

















⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫⇜✫⇝✫
Problema 6:



























☆・。。・゜゜・。。・゜★ 
 Como estudiante autónomo que todavía está aprendiendo c++. 
 Organizo mi comprensión del conocimiento en la forma de aprender y compartir, y también espero poder darles una referencia. Como progresar con todos, si hay algún error, espero que todos puedan corregirme. 
¡Muchas gracias!  Si te gusta, ¡síguelo! O (∩_∩) O 
Gracias por su apoyo ❗️
█▌│▌║▌ │█│║││█│ 

ADVERTENCIA: NO INTENTE HACER UN ATAQUE SIN EL PERMISO DE PROPIETARIO DEL SITIO WEB. ES UN PROPÓSITO EDUCATIVO SOLAMENTE. 
NO ES RESPONSABLE DE NINGÚN TIPO DE PROBLEMA ILEGAL. 
PERMANECE LEGAL. 
GRACIAS! 
Si tienes algún problema, deja un comentario y comparte tú opinión.
 ¿Ha quedado contestada su pregunta?

Comentarios

Entradas populares de este blog

Instalar DoxWeb con Termux

Termux Instalar Ngrok

Termux buscar con userRecon redes sociales de un persona

banner logo

📽video

Únete al chat

Comentarios

Blog Populares

Instalar DoxWeb con Termux

Instalar Metasploit-Framework En Android Con Termux

Termux Instalar Ngrok

Hackear contraseñas WiFi con Python fácilmente con este sencillo script

Generar combos+verificar cuentas para spotify

👻 By Blog

By Luishiño

Security

Compartir el Link

Copiar

Estamos en constante crecimiento


× IMPORTANTE!

»El autor de este blog tiene como objetivo principal facilitar el acceso a información

sobre seguridad informática, tecnología, programación, técnicas de hacking e inteligencia artificial.

Es importante destacar que el blog está destinado exclusivamente a fines educativos y NO promueve actividades ilegales.

El autor se desliga de cualquier responsabilidad sobre descargas, opiniones y comentarios de los textos que se citen en el blog.

La misión principal es compartir conocimiento responsable para mejorar la seguridad digital y promover el uso ético de la tecnología.

Se hace un llamado a los lectores para utilizar sus habilidades de manera responsable y nunca para dañar a otros.

Descarga gratis la app The Seven Codes y comparte con tus amig@s

Google play

Esta obra de Luishiño está bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual CC BY-NC-SA 4.0 Internacional

Aviso Legal


>_Si te gustan los contenidos de este sitio,
¿Deseas realizar una aportación?
Puedes colaborar con una pequeña donación via PayPal. La forma rápida y segura de pagar en Internet. シ

Apoyar al sitio


📡Los interesados en información sobre contrato de soporte Asistencia Técnica , licencia de uso/actualizaciones de sus utilidades, contacten con The Seven Codes para hacer su presupuesto y/o consultar por el servicio al twitter:@Lpericena

Mis redes sociales

© Copyright 2020-2024 .Todos los derechos reservados
by Luishiño - The Seven Codes