PDA

Ver la Versión Completa : Problema con producto a través de sumas sucesivas.


gerupc
07-08-2007, 03:39:04
Hola,

he de hacer un problema, que me calcule el producto de dos variables, mediante una suma sucesiva, por ejemplo:

4 * 3 = 3+3+3+3 = 12

Entonces, lo que tengo claro es que lo tengo que hacer mediante un bucle para que el programa me haga la suma de la variable (y = 3), pues (x = 4) veces por ejemplo, pero no sé exactamente cómo escribirlo... he probado de muchas formas diferentes, pero al final ninguna es correcta.

Si alguien me echase una mano, se lo agradecería mucho :)

Un saludo,

Geru.

defcon1_es
07-08-2007, 09:51:45
he de hacer un problema, que me calcule el producto de dos variables, mediante una suma sucesiva, por ejemplo:

4 * 3 = 3+3+3+3 = 12

Entonces, lo que tengo claro es que lo tengo que hacer mediante un bucle para que el programa me haga la suma de la variable (y = 3), pues (x = 4) veces por ejemplo, pero no sé exactamente cómo escribirlo...

Mira a ver si esta función puede servirte.

function Sumas_Sucesivas(x,y: integer): integer;
var i: Integer;
begin
Result := 0; //No se si esto es reduntante, pero por si acaso...
for i:=1 to x do
Result := Result + y;
end;

gerupc
07-08-2007, 18:00:10
Hola,

muchas gracias por tu respuesta, pero no me sirve.

Siento ser tan 'tiquismiquis' y no haberlo mencionado antes, pero no puedo usar una funcion, lo exige el problema propuesto.

A ver si me podeis echar una mano a buscar otra.....que todavia no la he encontrado!! ;-)

Un saludo,

Geru.

gerupc
07-08-2007, 18:22:16
sHola,

lo conseguí...era una tontería, lo estaba haciendo bien, el error era que el 'write(resultado) lo estaba haciendo dentro de propio bucle y claro, así no...
Aqui dejo el programita, por si a alguien que esté en un caso similar al mio, le viene bien ;-)

program sumas_sucesivas;

uses SysUtils;

var
x, y: integer;
contador: integer;
resultado: integer;

Begin
write('Introduce el primer numero: ');
readln(x);
write('Introduce el primer numero: ');
readln(y);

writeln('');

resultado := 0;

for contador := 1 to x do //De 1 hasta x VECES
Begin

resultado := resultado + y; //para asignar a resultado el valor de y, porque {0+y = y}

End;

write(resultado);

Readln;
End.

Un saludo, y gracias por tu respuesta defcon1_es!! ;-)

Geru.

eduarcol
07-08-2007, 18:23:31
alli esta la solucion al problema fijate bien y veras q es lo q te piden

gerupc
07-08-2007, 21:12:44
Hola,

lo siento, pero no entiendo tu frase...:o I´m sorry

Un saludo,

Geru.