Atribuindo diversos valores a diversas matrizes [LINGUAGEM C]

1. Atribuindo diversos valores a diversas matrizes [LINGUAGEM C]

Roberto
mrx6s0

(usa Ubuntu)

Enviado em 22/12/2018 - 08:21h

Bom dia!

Estou com um projeto de pesquisa pessoal, onde necessito implementar um algoritmo de busca heurística para identificar e selecionar padrões de acordo com parâmetros previamente inseridos. Ou seja, se o vetor X1 tiver os parâmetros que melhor satisfaçam a condição dada (no caso, o porte de árvores; as árvores de maior porte, serão selecionadas), ele será selecionado. E assim por diante

O que necessito é inserir os valores separadamente, e como terá mais de um parâmetro, será uma matriz de ordem 6x6, no mínimo.

Tenho parte do código, caso alguém possa me ajudar, fico agradecido!

segue o código:


#include <stdio.h>
#include <stdlib.h>

int main()

{

int n, x, i, y;
int max, min;


scanf("%d %d", &n);

for (i = 0; i < n; i++)

{

scanf("%d %d", &x,&y);

if (i == 0) /* lendo o primeiro da sequencia */

max = x, min = y;



else

{

//if( x >= max)

//max = x+1;

// x = x+1; /* se x for igual ou maior que o máximo, incrementa */

//if(y <= min)

//min = y-1;

if(x >= min)
min = x-min;
if(y <= max)
x = max;

// y = y-1;
else {

printf("error...");

return -1;

}

}
}


printf("max = %d, min = %d\n", max, min);

return 0;
}


posso passar o main pra uma função, arrumá-la e no main() coloco as instruções de entrada dos dados!?

Agradeço desde já!!!!


  


2. Re: Atribuindo diversos valores a diversas matrizes [LINGUAGEM C]

Paulo
paulo1205

(usa Ubuntu)

Enviado em 23/12/2018 - 16:36h

mrx6s0 escreveu:

Bom dia!

Estou com um projeto de pesquisa pessoal, onde necessito implementar um algoritmo de busca heurística para identificar e selecionar padrões de acordo com parâmetros previamente inseridos. Ou seja, se o vetor X1 tiver os parâmetros que melhor satisfaçam a condição dada (no caso, o porte de árvores; as árvores de maior porte, serão selecionadas), ele será selecionado. E assim por diante

O que necessito é inserir os valores separadamente, e como terá mais de um parâmetro, será uma matriz de ordem 6x6, no mínimo.

Tenho parte do código, caso alguém possa me ajudar, fico agradecido!

segue o código:

#include <stdio.h>
#include <stdlib.h>

int main()

{

int n, x, i, y;
int max, min;


scanf("%d %d", &n);


Cuidado aqui. Você mandou ler dois valores, mas passou apenas um ponteiro como destino da leitura, o que significa que o segundo vai acabar sendo guardado numa posição indeterminada da memória, o que pode gerar efeitos deletérios sobre o seu programa.



for (i = 0; i < n; i++)

{

scanf("%d %d", &x,&y);

if (i == 0) /* lendo o primeiro da sequencia */

max = x, min = y;


Em vez de testar dentro do laço de repetição se a variável de controle é igual a zero, seria melhor ter a primeira leitura fora do laço de repetição, e as demais lidas diretamente, sem teste algum, dentro do laço.




else

{

//if( x >= max)

//max = x+1;

// x = x+1; /* se x for igual ou maior que o máximo, incrementa */

//if(y <= min)

//min = y-1;

if(x >= min)
min = x-min;
if(y <= max)
x = max;

// y = y-1;
else {

printf("error...");

return -1;

}

}
}


printf("max = %d, min = %d\n", max, min);

return 0;
}


posso passar o main pra uma função, arrumá-la e no main() coloco as instruções de entrada dos dados!?

Agradeço desde já!!!!


Não vi nenhuma matriz ou vetor no programa, nem laço de repetição dentro de laço de repetição, típicos de operações matriciais, incluindo leitura de dados. Você não chegou a fazer essa parte?






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts