CrazyCamel Opublikowano 25 Stycznia 2009 Zgłoś Opublikowano 25 Stycznia 2009 (edytowane) 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 25 Stycznia 2009 przez CrazyCamel Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
shooter Opublikowano 1 Lutego 2009 Zgłoś Opublikowano 1 Lutego 2009 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;} Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...