Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - DotarSojat

Páginas: [1] 2
1
gracias por la respuesta!! he leído un poco y investigado en google e youtube, pero hay algo que aún no me queda claro, como puedo usar un método de una clase en otra? es decir tengo una clase A y una clase B y quiero por así decirlo meter la clase B en la clase A, como podría hacer eso ?

2
Hola a todos,  vengo con la siguiente consulta,  cuando uno hace uso de POO en C++ tiene que definir su clases y los diferentes métodos (Funciones), ahora  bien mi consulta es la siguiente: si hago uso de un método constructor ¿es necesario usar los métodos set y get?

Si tengo una función que me pide los datos de una variable declaradas en la clase,  solo dejar de pedirlos cuando ellos (los datos ) son válidos es necesario que use mis métodos set y get ? O no es necesario esa función ya que con los métodos set y get lo estaría haciendo? Si pudieran ayudarme a entender eso se los agradecería mucho  :) ;)

3
Buenas, intentando hacer una verificación de datos en una función  con un do while y luego quiero retornar diferente valores, pero la manera en que la implemente no me funciona

Código: [Seleccionar]
#include <iostream>
            using name space std;

int verificacion (int a, int b, int c, int d ){
int n2=0;

do { //ciclo que se repite mientras los datos suministrados esten malos
       //cuando sean validos los datos se sale
cout<<"suministre a"<<endl;
cin>>a;
cout<<"suministre b"<<endl;
cin>>b;
cout<<"suministre c"<<endl;
cin>>c;
cout<<"suministre d"<<endl;
cin>>d;

} while (a>b and c>d)

if (n2==0){ // si los datos son erroneos que la funcion retorne el siguiente mensaje
cout<<"datos suministrados erroneos"<<endl;
return n2;
n2++
}

else { // en otro caso que retorne este mensaje
cout<<"Datos suministrado correctos"<<endl;
return n2;
}



}



int main () {
int a,b,c,d,n1;

n1=verificacion(a,b,c,d);
cout<<"Los datos son :"<<n1<<endl;









}

4
Los errores que me da son los siguientes http://prntscr.com/94c29l Pero la verdad tal cual como esta no logro encontrar que me falte un paréntesis o un ";" como el error que me da

5
Buenas me mandaron a que resuelva la siguiente expresión,  (X^2 + 8 MOD 2 DIV Y / (3 – 4)) / (8 - X / 7 + Z * 11 MOD 3) en c++, los valores x,y,z son introducidos por el usuari, pero cuando intento resolver la expresión me da un error, pero no entiendo por qué

Código: [Seleccionar]
#include <iostream>
using namespace std;
int main() {

int x,y,z,r;
cout<<"introduzca el valor entero x"<<endl;
cin>>x;
cout<<"introduzca el valor entero y"<<endl;
cin>>y;
cout<<"introduzca el valor entero z"<endl;
cin>>z;

r=(x^2 + 8 % 2 / y / (3 – 4)) / (8 - x / 7 + z * 11 % 3);

cout<<"el resultado es"<<r<<endl;




return 0;
}

6
disculpa mi ignorancia, me podrías explicar la funcionalidad de los for de esos for con esas condiciones es que no la entiendo

7
Vale, muchas gracias, voy a hacer el intento así como recomendo

8
y NumeroColumnas-1 y NumeroFilas-1  son enteros declarados antes? valores fijos?

9
Buenas, necesito construir una matriz NxN cuyos elementos  son números enteros, construya un programa que imprima los valores de las diagonales secundarias de la matriz según la distribución en forma de rombo y espacios



de ese modo


Código: [Seleccionar]
#include <iostream>
using namespace std;

int main () {

int mat[4][4];
int cont=1;
for(int i=0;i<4;i++){
for(int j=0;j<4;j++){

mat[j][i]=cont++;

}
}
int k=0,r=0;
for(int i=0; i<7; i++){
r=(i/4);

for(int j=k; j>=0; j--){

cout << mat[r][j]<<" ";
r++;
}
cout << endl;
k++;
k-=k/4;
}

cin.get();
return 0;
}


Eso es lo que llevo de código pero me quede estancado,

10
Muchas gracias por la respuesta,Ogramar , si es que en el primer código solo podia utilizar las sentecias condicionales ( if-if..else,swicth) Ya en el segundo si podía utilizar los Arrays, struct y archivos, si lo que pasa es que se le va agregando dificultad porque era por fases

11
Buenas, tenia que hacer un sudoku por partes, en la primera era validar el tablero numérico, recibiendo un número entero de 16 digitos, Cada valor representará una posición dentro del tablero numérico 4x4, dividido por cuadrantes en la que no pueda haber número repetidos, en filas, columnas o cuadrantes http://prntscr.com/8pzd7b así estaban divididos los cuadrantes, en el tablero, una cadena válida de 16 dígitos, era una que estuviera comprendida con números entero entre  1 y 4, solo se podía hacer utilizando estructura condicionales ( If, if else, switch) esa parte la logre hacer

Código:

Código: [Seleccionar]
#include <iostream>
using namespace std;

int main () {


 int a,b,c,d,e,f,a11,a12,a13,a14,b11,b12,b13,b14,c11,c12,c13,c14,d11,d12,d13,d14;
 unsigned long long int x;
 bool t=true;

 cout<<"introduzca la cadena"<<endl;
 cin>>x;
 


    a=x/100000000;
 b=x%100000000;
 c=a/10000;
 d=a%10000;
 e=b/10000;
 f=b%10000;
 a11=c/1000;
 c=c%1000;
 a12=c/100;
 c=c%100;
 a13=c/10;
 a14=c%10;
 b11=d/1000;
 d=d%1000;
 b12=d/100;
 d=d%100;
 b13=d/10;
 b14=d%10;
 c11=e/1000;
 e=e%1000;
 c12=e/100;
 e=e%100;
 c13=e/10;
 c14=e%10;
 d11=f/1000;
 f=f%1000;
 d12=f/100;
 f=f%100;
 d13=f/10;
 d14=f%10;
 
  //condicional que evalua que el contenga 16 digitos
  if ((x>99999999999999999 && x<10000000000000000)){
   cout<<"Entrada incorrecta la cadena  debe contener 16 digitos"<<endl;
   t=false;
  }
  else { if (((a11!=1) and (a11!=2)  and (a11!=3)  and (a11!=4))  or // condicional que evalua que la cadena introducida contenga numeros entre 1 y 4
   ((a12!=1) and (a12!=2)  and (a12!=3)  and (a12!=4))  or
   ((a13!=1) and  (a13!=2) and (a13!=3)  and (a13!=4))  or 
   ((a14!=1) and  (a14!=2) and  (a14!=3) and (a14!=4))  or
   ((b11!=1) and  (b11!=2) and  (b11!=3) and (b11!=4))  or 
   ((b12!=1) and  (b12!=2) and  (b12!=3) and (b12!=4))  or 
   ((b13!=1) and ( b13!=2) and  (b13!=3) and (b13!=4))  or 
   ((b14!=1) and  (b14!=2) and  (b14!=3) and (b14!=4))  or 
   ((c11!=1) and  (c11!=2) and  (c11!=3) and (c11!=4))  or 
   ((c12!=1) and  (c12!=2) and  (c12!=3) and (c12!=4))  or 
   ((c13!=1) and  (c13!=2) and  (c13!=3) and (c13!=4))  or 
   ((c14!=1) and  (c14!=2) and (c14!=3)  and (c14!=4))  or
   ((d11!=1) and  (d11!=2) and  (d11!=3) and (d11!=4))  or
   ((d12!=1) and (d12!=2)  and (d12!=3)  and (d12!=4))  or 
   ((d13!=1) and  (d13!=2) and (d13!=3)  and (d13!=4))  or 
   ((d14!=1) and  (d14!=2) and  (d14!=3) and (d14!=4))){
          cout<<"Entrada incorrecta, la cadena solo debe poseer digitos entre 1 y 4 "<<endl;
    t=false;}
 else {
     

     
   //condicionales que evaluan cuadrante, filas y columnas que no haya numeros repetidos               


  if ((a11==a12))  {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C1"<<endl;
  cout<<"Digitos repetidos "<<endl;
  cout<<"C1 :"<<
  cout<<"Columna 1:"<< a11<<","<<a12<<endl;
  t=false;}
 
  if ((a11==b11)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C1"<<endl;
  cout<<"Fila 1"<<endl;
  cout<<"digitos repetidos:"<<endl;
  cout<<"C1:"<<a11<<endl;
  cout<<"Fila 1:"<<a11<<","<<b11<<endl;
  t=false;}
 
  if ((a11==b12)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C1"<<endl;
  cout<<"Digitos repetidos "<<endl;
  cout<<"C1:"<<a11<<endl;
   t=false;}
 
  if ((a12==b11)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C1"<<endl;
  cout<<"Digitos repetidos "<<endl;
  cout<<"C1:"<<a12<<endl;
  t=false;}
 
  if ((a12==b12)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C1"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C1:"<<a12<<endl;
  t=false;}
     
  if((b11==b12)) {
  cout<<"Repeticion de digitos en :"<<endl;
  cout<<"C1"<<endl;
  cout<<"Columna 2"<<endl;
  cout<<"Digitos repetidos en"<<endl;
  cout<<"Columna 2:"<<b11<<","<<b12<<endl;
  t=false;}
 
  if ((a13==a14)) {
  cout<<"Repeticion de digitos en"<<endl;
  cout<<"C2"<<endl;
  cout<<"Fila 1"<<endl;
  cout<<"Digitos repetidos en "<<endl;
  cout<<"Fila 1 :"<<a13<<","<<a14<<endl;
  t=false;}
 
  if ((a13==b13)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C2"<<endl;
  cout<<"Columna 1"<<endl;
  cout<<"Digitos repetidos en"<<endl;
  cout<<"Columna 1:"<<a13<<","<<b13<<endl;
  t=false;}
 
  if((a13==b14)) {
  cout<<"Repeticion de digito en:"<<endl;
  cout<<"C2"<<endl;
  cout<<"Digitos repetidos "<<endl;
  cout<<"C2:"<<a13<<endl;
  t=false;}
 
   
  if ((a14==b13)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C2"<<endl;
  cout<<"Digitos repetidos en"<<endl;
  cout<<"C2:"<<a14<<endl;
  t=false;} 
 
  if ((a14==b14)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C2"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C2:"<<endl;
  t=false;} 
 
  if ((b13==b14)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C2"<<endl;
  cout<<"Columna 2"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C2:"<<b13<<endl;
  cout<<"Columna 2:"<<b13<<","<<b14<<endl;
  t=false;}
 
     
  if ((c11==c12)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C3"<<endl;
  cout<<"Fila 3"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C3:"<<c11<<endl;
  cout<<"Fila 3"<<c11<<","<<c12<<endl;
  t=false;}
 
  if ((c11==d11)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C3"<<endl;
  cout<<"Columna 1"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C3:"<<c11<<endl;
  cout<<"Columna 1:"<<c11<<","<<d11<<endl;
  t=false;}
 
  if((c11==d12)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C3"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C3:"<<c11<<endl;
  t=false;} 
 
  if ((c12==d11)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C3"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C13:"<<c12<<endl;
  t=false;}
     
  if ((c12==d12)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C3"<<endl;
  cout<<"Fila 2"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C3:"<<c12<<endl;
  cout<<"Fila 2:"<<c12<<","<<d12<<endl;
  t=false;}   
 
  if((d11==d12)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C3"<<endl;
  cout<<"Columna 4"<<endl;
  cout<<"Digitos repetidos "<<endl;
  cout<<"C3:"<<d11<<endl;
  cout<<"Columna 4:"<<d11<<","<<d12<<endl;
  t=false;}   
 
  if ((c13==c14)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C4"<<endl;
  cout<<"Columna 3"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C4:"<<c13<<endl;
  cout<<"Columna 3:"<<c13<<","<<c14<<endl;
  t=false;}
 
  if ((c13==d13)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C4"<<endl;
  cout<<"Fila 3"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C4:"<<c13<<endl;
  cout<<"Fila 3:"<<c13<<","<<d13<<endl;
  t=false;} 
 
  if ((c13==d14)) {
  cout<<"Repeticion de digitos en :"<<endl;
  cout<<"C4"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C4:"<<c13<<endl;
  t=false;} 
 
  if((c14==d13)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C4"<<endl;
  cout<<"Digitos repetidos"<<endl;
  cout<<"C4:"<<c14<<endl;
  t=false;}   
 
  if ((c14==d14)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C4"<<endl;
  cout<<"Fila 4"<<endl;
  cout<<"Digitos repetidos "<<endl;
  cout<<"Fila 4:"<<c14<<","<<d14<<endl;
  t=false;}   
 
  if ((d13==d14)) {
  cout<<"Repeticion de digitos en:"<<endl;
  cout<<"C4"<<endl;
  cout<<"Columna 4"<<endl;
  cout<<"Digitos repetidos "<<endl;
  cout<<"C4:"<<d13<<endl;
  cout<<"Columna 4:"<<d13<<","<<d14<<endl;
  t=false;}     
 





}       

 if ((t==true)) {
 cout<<"solucion valida"<<endl;}
 else
 {cout<<"Solucion invalida"<<endl;
 }

}     
}   


Pero ahora en la segunda, me piden hacer http://prntscr.com/8pznkkhttp://prntscr.com/8pznxqhttp://prntscr.com/8pzoa8http://prntscr.com/8pzokypudiendo utilizar, acciones, funciones, ciclos, arreglos, matrices, registro, hice este código ( Aclaro que esta mal, ya que no hace lo que me piden que haga)

Código:

Código: [Seleccionar]
#include <iostream>
using namespace std;

int mat[9][9];


bool ValidarTablero() {//función que valida que el tablero tenga una solucion valida
 
bool ver=true;

int cont=0,c=0;
 
 for(int i=cont+1;i<9;i++) {
  for(int j=0;j<9;j++) {
   
  if (mat[cont][j]==mat[i][j])
   {if (c>1){{cout<<"Solucion invalida"<<endl;}
   
  ver=false;}
  else
  {cout<<"Solucion Valida"<<endl;
  ver=true;}
  }
   }

 cont++;
 
return (ver);
}
}


void MostrarTablero(){//función que muestra el tablero actual
 
 
 
 
 for(int i=0;i<9;i++){
  for(int j=0;j<9;j++){
 
  cout  <<  mat[i][j];
 
  }
 cout<<""<<endl;
 }
 
}




bool ValidarInsercion () {
bool validar=true;
int x,y,n;
 
 cout<<"ingrese la coordenada x"<<endl;
 cin>>x;
 cout<<"ingrese la coordenada y"<<endl;
 cin>>y;
 cout<<"ingrese el valor"<<endl;
 cin>>n;
 for (int i =0; i<9; i++){
 if (mat[x][i]==n || mat[i][y]==n) {
  validar=true;
  break;

if (validar==true){
  cout<<"valor repetido"<<endl;
}
 
return (validar);
}
}



//accion principal

int main () {
 
int op,op1;
 
 //llena la matriz con puros 0
 for (int i=0; i<9; i++){
 for (int j=0; j<9; j++){
 mat[i][j]=0;
 mat[0][3]=1;
 mat[1][2]=5;
 mat[2][7]=2;
 mat[3][1]=7;
 mat[4][4]=3;
 mat[5][1]=5;
 mat[6][5]=4;
 mat[7][6]=3;
 mat[8][8]=1;
 }
}
 
 
 

 
 
 
 //menu de opciones para la diferente modalidades del juego
 
 cout<<"******MENU******"<<endl;
 cout<<"Eliga la opcion que desea utilizar"<<endl;
 cout<<"1: Cargar Tablero"<<endl;
 cout<<"2: Jugar"<<endl;
 cout<<"3: Salir"<<endl;
 cin>>op;
 
 
 switch(op) {
 
  case 1:
  break;
 
  case 2:
  cout<<"1: Jugada"<<endl;
  cout<<"2: Mostrar Tablero"<<endl;
  cout<<"3: Validar"<<endl;
  cout<<"4: Regresar"<<endl;
  break;
  cout<<"Jugar"<<endl;
  cout<<"Mostrar tablero"<<endl;
  cout<<"Validar"<<endl;
  cout<<"Regresar"<<endl;
  cin>>op1;
  switch (op1){
   case 1:ValidarInsercion();
   break;
   
   case 2:
   MostrarTablero();
   break;
   
   case 3:
   ValidarTablero();
   break;
   
  }
   
   
   
   
   
   }
 
 

 
 
 return 0;
 }


Quisiera saber si pudieran examinar esas acciones y funciones que hice y pudieran aclararme en que falle, y la duda es referente me dijeron que hay una formula de saber si un número esta repetido en un cuadrante o fila con una formula matemática ¿Es cierto? como puedo aplicar eso en mi código, espero me puedan ayudar,

12
Buenas tardes, quisiera saber como dada una matriz, 9x9, y dadas dos coordenadas y un valor ( ingresadas)  verificar que ese valor en esas coordenadas no haya número repetidos en filas y columna?, lo estaba pensando mas o menos así
Código: [Seleccionar]
#include <iostream>
using namespace std;

bool VerificarNumero (int x) {
bool validar=true;


for (int j=0; j<9; j++) {
if (j !=x) {
}
if (mat[x][j]==x) {
}

}

for (int i=0; i<9; i++){
if (i !=x){
}
if (mat[i][x]==x){
}
}

return (validar);
}


int main () {

int x;





}
es una función pero no cumple, con lo dicho anteriormente

13
Podrían ayudarme en el código siempre me entra en el sino asi la solucion este valida o no
Solución válida: 1234432134124321
Solución Invalida: 1234432132222133

No agarra ninguno de los condicionales que le pongo, por favor,
Código: [Seleccionar]
#include <iostream>
using namespace std;

int main () {


int a,b,c,d,e,f,a11,a12,a13,a14,b11,b12,b13,b14,c11,c12,c13,c14,d11,d12,d13,d14;
unsigned long long int x;
cout<<"introduzca la cadena"<<endl;
cin>>x;



    a=x/100000000;
b=x%100000000;
c=a/10000;
d=a%10000;
e=b/10000;
f=b%10000;
a11=c/1000;
c=c%1000;
a12=c/100;
c=c%100;
a13=c/10;
a14=c%10;
b11=d/1000;
d=d%1000;
b12=d/100;
d=d%100;
b13=d/10;
b14=d%10;
c11=e/1000;
e=e%1000;
c12=e/100;
e=e%100;
c13=e/10;
c14=e%10;
d11=f/1000;
f=f%1000;
d12=f/100;
f=f%100;
d13=f/10;
d14=f%10;

if (((a11!=1) and (a11!=2)  and (a11!=3)  and (a11!=4))  or
((a12!=1) and (a12!=2)  and (a12!=3)  and (a12!=4))  or
((a13!=1) and  (a13!=2) and (a13!=3)  and (a13!=4))  or 
((a14!=1) and  (a14!=2) and  (a14!=3) and (a14!=4))  or
((b11!=1) and  (b11!=2) and  (b11!=3) and (b11!=4))  or 
((b12!=1) and  (b12!=2) and  (b12!=3) and (b12!=4))  or 
((b13!=1) and (b13!=2)  and (b13!=3)  and (b13!=4))  or 
((b14!=1) and  (b14!=2) and  (b14!=3) and (b14!=4))  or 
((c11!=1) and  (c11!=2) and (c11!=3)  and (c11!=4))  or 
((c12!=1) and  (c12!=2) and  (c12!=3) and (c12!=4))  or 
((c13!=1) and  (c13!=2) and  (c13!=3) and (c13!=4))  or 
((c14!=1) and (c14!=2)  and (c14!=3)  and (c14!=4))  or
((d11!=1) and  (d11!=2) and  (d11!=3) and (d11!=4))  or
((d12!=1) and (d12!=2)  and (d12!=3)  and (d12!=4))  or 
((d13!=1) and  (d13!=2) and (d13!=3)  and (d13!=4))  or 
((d14!=1) and  (d14!=2) and  (d14!=3) and (d14!=4))){
cout<<" numero introducido incorrecto"<<endl;}


else {
cout<<"Solucion valida"<<endl; }


if ((a11 == a12) and
(a11 == b11) and
(a11 == b12) and
(a12 == b11) and
(a12 == b12) and
(b11 ==b12) ) {
                     cout<<"error en el cuadrante C1"<<endl;}
                     
                     
               if  ((a13==a14)  and
(a13==b13) and
(a13==b14) and
(a14==b13) and
(a14==b14) and
(b13==b14)) {
cout<<" error en el cuadrante C2"<<endl;
}


if ((c11==c12) and
(c11==d11) and
(c11==d12) and
(c12==d11) and
(c12==d12) and
(d11==d12)) {
cout<<"error en el cuadrante C3"<<endl;
}



if ((c13==c14) and
(c13==d13) and
(c13==d14) and
(c14==d13) and
(c14==d14) and
(d13==d14)) {
cout<<"error en el cuadrante C4"<<endl;
}

if ((a11==a12) and
    (a11==a13) and
    (a11==a14)) {
   cout<<"error en la fila 1"<<endl;}
   
   
   if ((b11==b12)    and
       ( b11==b13)   and
       (b11==b14)) {
   cout<<"error en la fila 2"<<endl;}
   
   if((c11==c12) and
      (c11==c13) and
      (c11==c14)) {
   cout<<"error en la fila 3"<<endl;}
   
   if((d11==d12) and
  (d11==d13) and
      (d11==d14)) {
   cout<<"error en la fila 4"<<endl;}

if (( a11==b11) and
     (a11==c11) and
     (a11==d11)) {
cout<<"error en la columna 1"<<endl;}

if ((a12==b12) and
    (a12==c12) and
    (a12==d12)) {
cout<<"error en la columna 2"<<endl;}

if((a13==b13) and
   (a13==c13) and
   (a13==d13))  {
cout<<"error en la columna 3"<<endl;}

if ((a14==b14) and
    (a14==c14) and
    (a14==d14)) {
cout<<"error en la columna 4"<<endl;}

}


14
Buenas, estoy intentado hacer un sudoku, por fase, la primera es donde, ingresan un número de 16 dígitos y verificar que no esten repetidos los mismo numero estre filas y columnas en los diferente cuadrante, dividí el numero en dígitos que representarían cada número ya que esta divido por cuadrantes C1,C2.C3,C4



luego verifique que el número este entre 1 y 4 ( 1,2,3 y 4) ya que tiene que esta entre ese rango, ahora cuando intento verificar que no haya errores en los cuadrante y filas con condicionales, ( por ahora solo puedo utilizar eso)

no da como me gustaría que diera, aquí les muestro el código
Código: [Seleccionar]
#include <iostream>
using namespace std;

int main () {


int a,b,c,d,e,f,a11,a12,a13,a14,b11,b12,b13,b14,c11,c12,c13,c14,d11,d12,d13,d14;
unsigned long long int x;
cout<<"introduzca la cadena"<<endl;
cin>>x;



    a=x/100000000;
b=x%100000000;
c=a/10000;
d=a%10000;
e=b/10000;
f=b%10000;
a11=c/1000;
c=c%1000;
a12=c/100;
c=c%100;
a13=c/10;
a14=c%10;
b11=d/1000;
d=d%1000;
b12=d/100;
d=d%100;
b13=d/10;
b14=d%10;
c11=e/1000;
e=e%1000;
c12=e/100;
e=e%100;
c13=e/10;
c14=e%10;
d11=f/1000;
f=f%1000;
d12=f/100;
f=f%100;
d13=f/10;
d14=f%10;

if (((a11!=1) and (a11!=2)  and (a11!=3)  and (a11!=4))  or
((a12!=1) and (a12!=2)  and (a12!=3)  and (a12!=4))  or
((a13!=1) and  (a13!=2) and (a13!=3)  and (a13!=4))  or 
((a14!=1) and  (a14!=2) and  (a14!=3) and (a14!=4))  or
((b11!=1) and  (b11!=2) and  (b11!=3) and (b11!=4))  or 
((b12!=1) and  (b12!=2) and  (b12!=3) and (b12!=4))  or 
((b13!=1) and (b13!=2)  and (b13!=3)  and (b13!=4))  or 
((b14!=1) and  (b14!=2) and  (b14!=3) and (b14!=4))  or 
((c11!=1) and  (c11!=2) and (c11!=3)  and (c11!=4))  or 
((c12!=1) and  (c12!=2) and  (c12!=3) and (c12!=4))  or 
((c13!=1) and  (c13!=2) and  (c13!=3) and (c13!=4))  or 
((c14!=1) and (c14!=2)  and (c14!=3)  and (c14!=4))  or
((d11!=1) and  (d11!=2) and  (d11!=3) and (d11!=4))  or
((d12!=1) and (d12!=2)  and (d12!=3)  and (d12!=4))  or 
((d13!=1) and  (d13!=2) and (d13!=3)  and (d13!=4))  or 
((d14!=1) and  (d14!=2) and  (d14!=3) and (d14!=4))){
cout<<" numero introducido incorrecto"<<endl;}

if ((a11 == a12) and
(a11 == b11)  and
(a11 == b12)  and
(a12 == b11)  and
(a12 == b12)  and
(b11 ==b12) ) {
                     cout<<"error en el cuadrante C1"<<endl;}
                     
                     
                     if ((a13==a14) and
(a13==b13)  and
(a13==b14)  and
(a14==b13)  and
(a14==b14)  and
(b13==b14)) {
cout<<" error en el cuadrante C2"<<endl;
}


if ((c11==c12) and
(c11==d11) and
(c11==d12) and
(c12==d11) and
(c12==d12) and
(d11==d12)) {
cout<<"error en el cuadrante C3"<<endl;
}


if ((c13==c14) and
(c13==d13) and
(c13==d14) and
(c14==d13) and
(c14==d14) and
(d13==d14)) {
cout<<"error en el cuadrante C4"<<endl;
}



return 0;

}
quisiera mas que todo, que me dijera error en tal cuadrante y el numero se repite tantas veces o en fila y se repite tantas veces pero no se como hacerlo así, gracias

15
Sí, efectivamente así compila, pero me gustaría hacerlo de otro modo, peor no consigo que me compile si le agrego variables que contengan letras a,b,c,etc

16
Sí, exactamente como lo dices, el primero no se si este bueno, aunque yo creo que si porque tiene cuatro, unos y cuatro ceros

el código sería más o menos así, pero no me compila, creo que no lo estoy haciendo bien en alguna parte
Código: [Seleccionar]
#include <iostream>
#include<string>
using namespace std;

int main ()
int codigo;
string nombre ("" "");
string apellido("" "");
strinf telefono ("" "");
string celular ("" "");
string correo ("" "");
string ciudad ("" "");
string pais ("" "");

int a,b,c,d,e,f,g,h;
cout<<"ingrese el codigo de seguridad"<<endl;
cin>>codigo;

if {
(a==b && c==d) || (e==f && g==h)
}
cout<<"codigo correcto"<<endl;

if (codigo correcto) {

cout<<"ingrese los datos del contacto"<<endl;
cout<<"ingrese el nombre"<<endl;
cin>>nombre;
cout<<"ingrese el apellido"<<endl;
cin>>apellido;
cout<<"ingrese el telefono"<<endl;
cin>>telefono;
cout<<"ingrese el celular"<<endl;
cin>>celular;
cout<<"ingrese el correo"<<endl;
cin>>correo;
cout<<"ingrese la ciudad"<<endl;
cin>>ciudad;
cout<<"ingrese el pais"<<endl;
cin>>pais;
if  ( pais !=venezuela) {
cout<<"solo se admiten contactos de Venezuela"<<endl;
}

else {
cout<<"el codigo de seguridad es incorrecto"<<endl;
}
  ¿crees falta algo?

17
 otra manera de hacerlo sería, es que quiero ver la diferentes manera de hacerlo y no quedarme con una sola, asignándole al código una variable int y poniéndole valores a,b,c,d,e,f,g,h, pero me quede trancado en como validar que el código tenga las misma cifras significativas de 1 y 0, disculpa la molestia pero en verdad quiero aprender las diferentes formas de hacerlo

Código: [Seleccionar]
#include <iostream>
#include <string>

using namespace std;

int main ()

int codigo
string nombre ("" "");
string apellido ("" "");
string telefono ("" "");
string celular ("" "");
string correo ("" "");
string ciudad ("" "");
string pais ("" "");

cout<<"introduzca el codigo"<<endl;
cin>>codigo

if {

( (a==b && c==d ) && ( e==f  && g== h) )

then

cout<<"Codigo correcto"<<

18
Y no hay otra forma de hacerlo ? lo del código de seguridad, me refiero

20
Buenas también tenía esa duda y por eso lo empece hacer como lo puse al principio pero la duda fue aclarada http://prntscr.com/5pcmjk se puede utilizar string pero no con el código de seguridad.

Páginas: [1] 2

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".