Skip to content
Snippets Groups Projects
Commit ba14ca12 authored by Pedro Folloni Pesserl's avatar Pedro Folloni Pesserl
Browse files

small modifications

parent 90e33499
No related branches found
No related tags found
No related merge requests found
......@@ -79,17 +79,17 @@ void simplifica_r(racional *r) {
}
}
int menor_r(racional *r1, racional *r) {
int a = r1->num * r->den;
int b = r1->den * r->num;
int menor_r(racional *r1, racional *r2) {
int a = r1->num * r2->den;
int b = r1->den * r2->num;
if (a < b)
return 1;
return 0;
}
int iguais_r(racional *r1, racional *r) {
int a = r1->num * r->den;
int b = r1->den * r->num;
int iguais_r(racional *r1, racional *r2) {
int a = r1->num * r2->den;
int b = r1->den * r2->num;
if (a == b)
return 1;
return 0;
......
......@@ -10,10 +10,7 @@ typedef struct racional {
int den;
} racional;
/* retorna um numero aleatorio entre min e max, inclusive.
* a rigor esta funcao poderia estar em outro arquivo, mas
* deixamos aqui para nao complicar demais
*/
/* retorna um numero aleatorio entre min e max, inclusive. */
int aleat (int min, int max);
/* cria um racional sem valores atribuidos, so aloca o espaco */
......@@ -44,25 +41,25 @@ int mmc (int a, int b);
int valido_r (racional *r);
/* simplifica um racional para o menor denominador possivel */
/* caso o racional seja da forma n/n, retorna 1 */
/* caso o racional seja da forma n/n, simplifica ele para 1/1 */
void simplifica_r (racional *r);
/* retorna 1 caso *r1 seja menor do que *r2 */
int menor_r (racional *r1, racional *r);
int menor_r (racional *r1, racional *r2);
/* retorna 1 caso os racionais *r1 e *r2 sejam iguais ou 0 caso contrario */
int iguais_r (racional *r1, racional *r);
int iguais_r (racional *r1, racional *r2);
/* soma dois racionais e devolve um ponteiro para o resultado */
/* retorna NULL em qualquer caso de falha */
/* retorna NULL em qualquer caso de falha, por consistencia com dividir */
racional *somar_r (racional *r1, racional *r2);
/* subtrai dois racionais e devolve um ponteiro para o resultado */
/* retorna NULL em qualquer caso de falha */
/* retorna NULL em qualquer caso de falha, por consistencia com dividir */
racional *subtrair_r (racional *r1, racional *r2);
/* multiplica dois racionais e devolve um ponteiro o resultado */
/* retorna NULL em qualquer caso de falha */
/* retorna NULL em qualquer caso de falha, por consistencia com dividir */
racional *multiplicar_r (racional *r1, racional *r2);
/* divide dois racionais e devolve um ponteiro para resultado */
......
No preview for this file type
......@@ -6,11 +6,11 @@
/* le um inteiro na faixa [0..MAX-1] */
int ler_tamanho() {
printf("Insira o tamanho do vetor (entre 1 e %d):\n", MAX);
printf("Insira o tamanho do vetor (entre 0 e %d):\n", MAX-1);
int n;
scanf("%d", &n);
while (n < 1 || n > 100) {
printf("Por favor, insira um inteiro entre 1 e %d:\n", MAX);
while (n < 0 || n > MAX-1) {
printf("Por favor, insira um inteiro entre 0 e %d:\n", MAX-1);
scanf("%d", &n);
}
return n;
......@@ -93,7 +93,8 @@ int main() {
int tam;
/* ler o tamanho do vetor de racionais */
tam = ler_tamanho();
if (!(tam = ler_tamanho()))
return 0; /* impede de passar 0 como um parametro para malloc */
/* aloca v com tam ponteiros para racional */
v = aleatorio_vetor_racional(tam);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment