Skocz do zawartości
CrazyCamel

C Macierz

Rekomendowane odpowiedzi

Witam

 

Mam do napisania program w C na uczelnie który wygeneruje macierz 100 na 100 (po dziesięć losowych wartości w wierszu na losowych miejscach, reszta miejsc będzie 0) a następnie ma on uporządkować macierz rosnąco. Uporządkowana macierz ma być przedstawiona w wka:

w=[1,2,3,4,1,2]

k=[1,2,3,4,2,4]

a=[1.0,3.0,5.0,6.0,2.0,4.0]

Mam tam wykorzystać generator liczb losowych do tworzenia macierzy (indeksów i wartości). Wynik zapisać do pliku.

 

Niestety nie mam zielonego pojęcia jak się za to zabrać. Jeśli ktoś ma chęć pochwalić się swoją wiedzą, to bardzo proszę. Nie chodzi mi o odwalenie za mnie roboty a jedynie o wskazówki jak taki program napisać.

 

Pozdrawiam

CrazyCamel

Edytowane przez CrazyCamel

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

problem banalny, wiec wykazac sie nie mozna. w ramach luzu napisalem taki programik.

pokaleczylem rzemioslo, ale dla tak banalnego problemu nie ma co stosowac wyszukanych metod.

 

program pisalem w dev-cpp

 

DZIALAJACY PROGRAM NAD WYCZERPUJACA DOKUMENTACJE - Agile Manifesto :)

 

#include <cstdlib>#include <iostream>#include <math.h>#include <time.h>using namespace std;int index[10];  //do losowych indexowint tab[100][100];int check_and_change(){   //do sprawdzania czy wektor indexow nie zawiera powtarzajacych sie wartosci	for(int i=0; i<9; i++)	 for(int j=i+1; j<10; j++){	   if(index[i]==index[j]){ index[i]=1+rand()%99; check_and_change();}	 }  return 0;}int main(int argc, char *argv[]){	srand(time(NULL));  //aby za kazdym razem losowane byly inne wartosci      for(int i=0; i<100; i++)	 //zerowanie macierzy	for(int j=0; j<100; j++)	 tab[i][j]=0;	 	for(int i=0; i<100; i++){ 	  		for(int l=0; l<10; l++)		 index[l]=1+rand()%99;	 	   check_and_change();	  	  for(int j=0; j<100; j++)	   for(int k=0; k<10; k++)		if(j==index[k]) tab[i][j]=1+rand()%100;   //albo % inny zakres losowania	}	 	 //macierz masz juz przygotowana do sortowania. Teraz napisz sobie sortowanie 	 //i wywoluj je dla kazdego rzedu	   //   for(int i=0; i<100; i++)   //   sortuj(i);	 	system("PAUSE");	return EXIT_SUCCESS;}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...