y como se metería esa ecuación dentro de un for? porque lo que se me da mal de c es usar lenguaje matemático
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char const *argv[])
{
int Topper=0, Harriet=0, Spewart=0, Rango=0;
int suma1=0, suma2=0, dígitos=0, dígitos2=0, dígitos3=0, dígitos4=0;
int producto1=0, producto2=0, producto3=0, producto4=0;
int resto1=0, resto2=0, resta1=0, resta2=0;
do {
printf("Dime un número de 4 dígitos");
scanf("%d", &Topper);
if (Topper<1000 ||
Topper>10000)
{
printf("Código no válido\n");
exit(0);
}
}
while (Topper<1000 || Topper>10000);
do {
printf("Dime un número de 4 dígitos");
scanf("%d",&Harriet);
if (Harriet<1000 || Harriet>10000)
{
printf("Código no válido\n");
exit(0);
}
}
while (Harriet<1000 || Harriet>10000);
do {
printf("Dime un número de 5 dígitos");
scanf("%d",&Spewart);
if (Spewart<10000 || Spewart>100000)
{
printf("Código no válido\n");
exit(0);
}
}
while (Spewart<10000 || Spewart>100000);
do {
printf("Dime un número de 5 dígitos");
scanf("%d",&Rango);
if (Rango<10000 || Rango>100000)
{
printf("Código no válido\n");
exit(0);
}
}
while (Rango<10000 || Rango>100000);
for (int i = 4; i > 0; --i){
dígitos = Topper % 10;
Topper = Topper/10;
producto1 = producto1 + (dígitos*(pow(2,i)%11);
}
for (int j = 4; j > 0; --j){
dígitos2 = Harriet % 10;
Harriet = Harriet/10;
producto2 = producto2 + dígitos2*j;
}
suma1 = producto1 + producto2;
for (int k = 5 ; k >0 ; --k)
{
dígitos3 = Spewart % 10;
Spewart = Spewart/10;
producto3 = producto3 + dígitos3*(k%10);
}
for (int t = 10 ; t > 5 ; --t){
dígitos4 = Rango % 10;
Rango = Rango/10;
producto4 = producto4 + dígitos4*(t%10);
}
suma2 = producto3 + producto4;
resto1 = suma1%11;
resta1 = 11 - resto1;
if (resto1 > 0 && resta1 < 10)
{
printf("Primer dígito = %d", resto1);
}
else if ((resta1 = 10))
{
printf("Primer dígito = 1");
}
else
printf("Primer dígito = 0");
resto2 = suma2%11;
resta2 = 11 - resto2;
if (resta1 > 0 && resta1 < 10)
{
printf("Segundo dígito = %d\n", resto1);
}
else if ((resta2 = 10))
{
printf("Segundo dígito = 1\n");
}
else
printf("Segundo dígito = 0\n");
}