elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / guardar palabras de una cadena en arreglos en: 4 Junio 2015, 11:23 am
tenemos la cadena siguiente:
char cad[19]="esto es un mensaje";
y quiero llevaro a otro arreglo pero sus elementos son sus palabras, es decir:
char copia[4][20]={"esto","es","un","mensaje"};
Código:
#include <iostream>
#include <string.h>
using namespace std;
void main(){
char cad[80]="esto es un mensaje";
        char copia[80][20];//con[80] es longitud de cada palabra
int con[80], num_p=1,k=0;//num_p es el numero de palabras
for (int i = 0; i < strlen(cad); i++){
if (cad[i] == ' ')num_p++;
}
for (int i = 0; i < num_p; i++){
con[i] = 0;
}
num_p = 1; k = 0;
for (int i = 0; cad[i] != '\0';i++){
if (cad[i] == ' '){
num_p++; k = 0;
}
else{
cad[num_p - 1]++;
copia[num_p - 1][k++] = cad[i];
}
}
for (int i = 0; i < num_p; i++){
cout << copia[i] << "\n";
}
system("PAUSE");
}
se que hay un metodo de los tokens, pero yo quiero sin eso....consejos por favor
2  Programación / Programación C/C++ / arreglo con varias modas en: 15 Abril 2015, 01:15 am
quiero saber cual es el elemento que se repite en mayor cantidad.....pongo el cuerpo del código:
Código:
int a[9]={2,3,1,2,4,1,5,1,2};
int max=0,repite,masrep;
for(int i=0;i<9;i++){
repite=0;
for(int j=0;j<9;j++){
if(a[i]==a[j]){
repite++;
}
}
if(repite>max){
masrep=a[i];
max=repite;
}
}
cout<<"el elemnto que mas se repite es "<<masrep<<"\n";
cout<<"y se repite "<<max<<" veces";

el problema es que este arreglo tiene dos elementos que se repiten en mayor cantidad
y me bota asi:
EL ELEMENTO QUE MAS SE REPITE ES 2
pero yo quiero que me bote  no solo a uno sino también al otro
EL ELEMENTO QUE MAS SE REPITE ES 2
EL ELEMENTO QUE MAS SE REPITE ES 1
sugerencias.....
3  Programación / Programación C/C++ / letras iniciales de una oracion en mayuscula en: 11 Abril 2015, 09:50 am
si tengo la siguiente oración:
*esto es un mensaje
y quiero cambiarlo a :
*Esto Es Un Mensaje
Código:
#include <stdio.h>
int main (void) {
 int n;
char cad[80],c;
cout<<"ingresa frase:\n";
gets(cad);
n=strlen(cad);
cad[0]=cad[0]-32;
for(int i=0;i<n-2;i++){
if (cad[i]== ' ' || cad[i]== '.' || cad[i]== ','){
cad[i+1] =cad[i+1]-32;
}
}
for(int i=0;i<n;i++){
cout<<cad[i];
}
cad[n]= '\0';
return 0;
}

pero esto solo me funciona solo para un espacio en blanco entre palabra y palabra. Yo quiero un metodo mas general.....con mas espacios en blanco, por ejemplo:

esto___es__un____mensaje
Esto___Es__Un____Mensaje
4  Programación / Programación C/C++ / arreglos con elementos repetidos-- en: 6 Abril 2015, 14:27 pm
sea un arreglo entero
int A[8] ={2,4,7,2,3,4,7,7}

pongo solo el cuerpo del codigo
Código
  1. #include <stdio.h>
  2.  
  3. int main (void) {
  4.  int a[8],i,j,cont=0;
  5. a[8] ={2,4,7,2,3,4,7,7}
  6. cout<<"\n";
  7. for(i=0;i<N;i++){
  8. for(j=0;j<N;j++){
  9. if(a[i]==a[j])
  10. cont++;
  11. }
  12. cout<<"el elemento "<<a[i]<<" se repite "<<cont<<" veces\n";
  13. cont=0;
  14. }    
  15. return 0;
  16. }
  17.  

el problema es que me vota asi
Código
  1. [code=cpp]
[/code]por ejemplo A[8] ={2,4,7,2,3,4,7,7}
2 se repite 2 veces
4 se repite 2 veces
7 se repite 3 veces
2 se repite 2 veces
3 se repite 1 veces
4 se repite 2 veces
7 se repite 3 veces
7 se repite 3 veces
pero yo quiero que me vote simplemente asi
2 se repite 2 veces
4 se repite 2 veces
7 se repite 3 veces
3 se repite 1 veces

necesito consejos ...

Mod: tema modificado, los códigos deben ir en etiquetas GeSHi
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines