• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Aplikacja linux w C

–1 głos
191 wizyt
pytanie zadane 25 grudnia 2017 w C i C++ przez michalnt Użytkownik (530 p.)
Aplikacja powinna pobierać podaną przez użytkownika jako parametr wywołania liczbę wartości losowych z systemowego generatora (/dev/random) następnie sortować te dane (dowolnym algorytmem sortującym) oraz wyświetlać je (posortowane) na standardowym wyjściu. Jako  rozwiązanie umieść na serwerze plik z kodem źródłowym zaimplementowanego programu.

 

Nie mam pojęcia od czego zacząć i czy do końca rozumiem polecenie. Mógłby ktoś mnie naprowadzić, ewentualnie napisać, bo muszę to oddać na jutro ten kod na lab.

Pozdrawiam i życzę Wesołych Świąt
3
komentarz 25 grudnia 2017 przez manjaro Nałogowiec (28,970 p.)
Chcesz aby w przyszłości operował Cię lekarz któremu prace na zaliczenia pisali forumowicze? No właśnie a ja nie chcę aby samochód którym mam jeździć, albo dom w którym mam mieszkać  projektowali inżynierowie którzy nie wiedzą od czego zacząć.

Również pozdrawiam i życzę Wesołych Świąt.

P.S. święta to czas także na refleksje - warto skorzystać.
komentarz 26 grudnia 2017 przez jpacanowski VIP (101,650 p.)

Mógłby ktoś mnie naprowadzić

1 odpowiedź

+2 głosów
odpowiedź 25 grudnia 2017 przez niezalogowany

Aplikacja powinna pobierać podaną przez użytkownika jako parametr wywołania liczbę wartości losowych z systemowego generatora (/dev/random) 

Open, read, close. Przykład:

if (!open("/dev/random", O_RDONLY)) return 1;

następnie sortować te dane (dowolnym algorytmem sortującym) oraz wyświetlać je (posortowane) na standardowym wyjściu. 

Sortowanie bąbelkowe C

komentarz 25 grudnia 2017 przez michalnt Użytkownik (530 p.)
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <unistd.h>
main()
{
int n;
	printf("Ile liczb chcesz posortowac?\n");
	scanf("%d",&n);
char myRandomData[n];
ssize_t result;
char schowek;
int zamiana;
int randomData = open("/dev/random", O_RDONLY);
 if (randomData < 0)
 {
	printf("ERROR\n");
 }
 else
 {
  result = read(randomData, myRandomData, sizeof myRandomData);
	if (result < 0)
	{
		printf("ERROR\n");
	}
 } 			

for(int p=0;p<n-1;p++)
{
	printf("%c",myRandomData[p]);
	
}

printf("\n------------------\n");

//sortowanie
do
{	
	zamiana=0;
	for(int i=0;i<n-1;i++)
	{
		if(myRandomData[i]>myRandomData[i+1])
		{
			zamiana=zamiana+1;
			schowek=myRandomData[1];
			myRandomData[i]=myRandomData[i+1];
			myRandomData[i+1]=schowek;
		}
	}
}while(zamiana!=0);
	
	for(int u=0;u<n-1;u++)
	{
		printf("%c\n",myRandomData[u]);
	}

return 0;
}

Dobrze?

komentarz 25 grudnia 2017 przez niezalogowany

Wydaje mi się, że w treści chodzi o parametr zewnętrzny, a nie wczytywanie ilości scanfem. Reszta jest ok. Przed wysłaniem wyrównaj wcięcia w kodzie, dodaj zamykanie pliku (funkcja close).

komentarz 26 grudnia 2017 przez michalnt Użytkownik (530 p.)
Ok, czyli te wartości losowe mają iść do tablicy argv []?
komentarz 26 grudnia 2017 przez michalnt Użytkownik (530 p.)
Ok, mam. Bardzo Ci dziękuje za pomoc :)

Podobne pytania

0 głosów
1 odpowiedź 74 wizyt
pytanie zadane 10 czerwca 2018 w C i C++ przez stood123 Początkujący (260 p.)
0 głosów
1 odpowiedź 259 wizyt
pytanie zadane 9 listopada 2016 w C i C++ przez Undisputed Bywalec (2,610 p.)
0 głosów
1 odpowiedź 77 wizyt
pytanie zadane 6 kwietnia 2016 w C i C++ przez niezalogowany
Porady nie od parady
Odznacz odpowiedź zieloną fajką, jeśli uważasz, że jest ona najlepsza ze wszystkich i umożliwiła ci rozwiązanie problemu.Najlepsza odpowiedź

64,904 zapytań

111,374 odpowiedzi

234,342 komentarzy

46,748 pasjonatów

Przeglądających: 225
Pasjonatów: 16 Gości: 209

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...