You are on page 1of 4

1) Escribir un programa que inserte un elemento dentro de un vector ordenado, considere el programa

utilizando para su solución la estructura while.

#include "stdafx.h"
#include<stdlib.h>
#include<iostream>
using namespace std;
void main(){
int v[10000],n,i=0;
cout<<"ingrese la cantidad de numeros: ";cin>>n;
while(i<n){
cout<<"ingrese numero: ";cin>>v[i];
i++;
}
cout<<"los numeros ingresados son";
for(i=0;i<n;i++)
cout<<v[i]<<"; ";
system("pause");
}

2) Escribir un programa que realice una búsqueda dentro de un vector ordenado, este programa debe
detenerse cuando el valor es hallado, cuando se llegue al final o cuando el valor buscado es
superado.

#include "stdafx.h"
#include<stdlib.h>
#include<iostream>
using namespace std;
void main(){
int v[10000],n,i=0,nc;
cout<<"ingrese la cantidad de numeros: ";cin>>n;
while(i<n){
cout<<"ingrese numero: ";cin>>v[i];
i++;
}
cout<<"ingrese el numero a comparar: ";cin>>nc;
for(i=0;i<n;i++){
if(nc==v[i])
{cout<<"valor hallado en la posicion "<<i++<<endl;
system("pause");

}
if(nc<v[i]){
cout<<"el numero "<<v[i]<<" es mayor que "<<nc<<endl;
system("pause");
}
}
cout<<"usted ha llegado al final"<<endl;
system("pause");
}
3) Escribir el código necesario para rotar un vector en sentido antihorario o sea al revés de lo
hecho en el problema 9.

#include<stdlib.h>
#include<iostream>
using namespace std;
void main(){
int v[100][100],n,i,j,ang,a;
cout<<"Ingrese la cantidad de numeros: ";cin>>n;
for(j=0;j<n;j++){
a=j;
cout<<"Ingrese el valor del "<<a+1<<" numero: ";cin>>v[0][j];
}

cout<<"\nIngrese el angulo a rotar: ";cin>>ang;


if(ang==90){
cout<<"El orden de los numeros despues de la rotacion es:"<<endl;
j=n-1;
for(i=0;i<n;i++){
v[i][n-1]=v[0][j];
j--;
cout<<v[i][n-1]<<endl;
}
}
if(ang==270){
cout<<"El orden de los numeros despues de la rotacion es:"<<endl;
j=0;
for(i=0;i<n;i++){
v[i][0]=v[0][j];
j++;
cout<<v[i][0]<<endl;
}
}
if(ang==180){
cout<<"El orden de los numeros despues de la rotacion es:"<<endl;
i=n-1;
for(j=0;j<n;j++){
v[i][j]=v[0][n-1-j];
cout<<v[i][j]<<" ";
}
}
cout<<endl;
system("pause");
}
4) Se tiene una matriz de letras, escriba usted un programa para que realice la búsqueda de una
cadena ingresada dentro de la matriz(PUPILETRAS), la búsqueda debe ser de izquierda a derecha y
de arriba hacia abajo en la matriz, los mensajes de salida será “Hallado” y “No hallado”.

#include "stdafx.h"
#include <stdlib.h>
#include <iostream>
#include <string.h>
using namespace std;
void main(){
char M[1000][1000];
int n,m,i,j,a,b,l,k=1,p=1,h=1;
char c[1000];
;
cout<<"ingrese el numero de filas: ";cin>>n;
cout<<"ingrese el numero de columnas: ";cin>>m;
for(i=0;i<n;i++)
for(j=0;j<m;j++){
a=i;
b=j;
cout<<"ingrese la letra ubicada en la posicion
"<<a<<b<<":";cin>>M[i][j];
}
for(i=0;i<n;i++){
for(j=0;j<m;j++)
cout<<M[i][j]<<" ";
cout<<""<<endl;
}
cout<<"ingrese cadena a buscar: ";cin>>c;
l=strlen(c);
for(i=0;i<n;i++)
for(j=0;j<m-l;j++){
if(c[0]!=M[i][j]){
p=0;
}
else{ p=1;
while(k<l)
{j++;
if(c[k]!=M[i][j]){
p=0;
break;
}
k++;
}
break;
}

}
if(p==1)
cout<<"si se encontro la palabra de forma horizontal"<<endl;
else
cout<<"no se encontro la palabra de forma horizontal"<<endl;
for(j=0;j<m;j++)
for(i=0;i<n-l;i++){
if(c[0]!=M[i][j]){
h=0;
}
else{ h=1;
while(k<l)
{i++;
if(c[k]!=M[i][j]){
h=0;
break;
}
k++;
}
break;
}

}
if(h==1)
cout<<"si se encontro la palabra de forma vertical"<<endl;
else
cout<<"no se encontro la palabra de forma vertical"<<endl;
system("pause");
}

5) Escriba un programa que lea una matriz de “n” filas por “m” columnas y me imprima la transpuesta
de dicha matriz.

#include "stdafx.h"
#include <stdlib.h>
#include <iostream>
#include <string.h>
using namespace std;
void main(){
char M[1000][1000];
int n,m,i,j,a,b,l,k=1,p=1,h=1;
char c[1000];
;
cout<<"ingrese el numero de filas: ";cin>>n;
cout<<"ingrese el numero de columnas: ";cin>>m;
for(i=0;i<n;i++)
for(j=0;j<m;j++){
a=i;
b=j;
cout<<"ingrese la letra ubicada en la posicion
"<<a<<b<<":";cin>>M[i][j];
}
for(i=0;i<n;i++){
for(j=0;j<m;j++)
cout<<M[i][j]<<" ";
cout<<""<<endl;
}
cout<<"la matriz transpuesta es :"<<endl;
for(j=0;j<m;j++){
for(i=0;i<n;i++)
cout<<M[i][j]<<" ";
cout<<""<<endl;
}
system("pause");
}