Dev - C++ - ayuda con ejercicio

   
Vista:

ayuda con ejercicio

Publicado por Macarena (5 intervenciones) el 15/05/2017 22:27:02
El ISBN o “International Standard Book Number” es un número de 10 dígitos usado para identificación de libros, cuyo último dígito es un verificador que se calcula mediante una operación con los dígitos anteriores.
El dígito verificador es obtenido mediante el residuo de S para 11.
Donde S es la suma de una vez el primer dígito, más dos veces el segundo dígito, más tres veces el tercer dígito, .. . , más nueve veces el noveno dígito.
Escriba un algoritmo que lea un número ISBN y verifique si fue escrito de forma correcta.
La suma S para el ISBN 9684443242 es:
1*9+2*6+3*8+4*4+5*4+6*4+7*3+8*2+9*4 = 178
El digito verificador es residuo(178/11) que es igual a 2.


alguien me puede ayudar lo necesito en c++ por favor
gracias!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

ayuda con ejercicio

Publicado por agustin (522 intervenciones) el 15/05/2017 23:10:19
Y si da como residuo 10? Habría 11 dígitos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

ayuda con ejercicio

Publicado por Macarena (5 intervenciones) el 15/05/2017 23:52:21
mm no lo se así sale el ejercicio lo copie tal cual
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

ayuda con ejercicio

Publicado por Héctor (6 intervenciones) el 04/06/2017 04:43:23
Coloca una 'X'. (http://gaussianos.com/detectar-si-un-isbn-es-erroneo/)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

ayuda con ejercicio

Publicado por agustin (522 intervenciones) el 16/05/2017 00:02:49
Te lo pongo en C pero es muy sencillo pasarlo a C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <stdio.h>
#include <string.h>
 
int main ()
{
	char isbn[100];
	int largo,control,total=0,i,error=0;
 
	printf ("Introduce el codigo: ");
	gets (isbn);
	largo=strlen (isbn);
 
	if (largo==10){
		for (i=0; i<largo; i++){
			if (!isdigit(isbn[i])){
				error=1;
			}
		}
		if (error==0){
			for (i=0; i<largo-1; i++){
				total+=(i+1)*(isbn[i]-'0');
			}
			control = total % 11;
			if (control != (isbn[9]-'0')){
				error=2;
			}
		}
	}else {
		error=1;
	}
	switch (error){
		case 0:
		printf ("Formato correcto.");
		break;
 
		case 1:
		printf ("Formato incorrecto.");
		break;
 
		case 2:
		printf ("El digito de control no es valido.");
		break;
	}
	return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

ayuda con ejercicio

Publicado por cristian (4 intervenciones) el 06/06/2017 04:11:03
Tiene un error de compilacion en la linea 15 y no se cual es???????
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad