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

Aplikacja linux w C

VPS Starter Arubacloud
–1 głos
295 wizyt
pytanie zadane 25 grudnia 2017 w C i C++ przez michalnt Użytkownik (520 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 (37,390 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,940 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 (520 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 (520 p.)
Ok, czyli te wartości losowe mają iść do tablicy argv []?
komentarz 26 grudnia 2017 przez michalnt Użytkownik (520 p.)
Ok, mam. Bardzo Ci dziękuje za pomoc :)

Podobne pytania

0 głosów
0 odpowiedzi 202 wizyt
0 głosów
1 odpowiedź 440 wizyt
pytanie zadane 10 czerwca 2018 w C i C++ przez stood123 Początkujący (260 p.)
+1 głos
1 odpowiedź 319 wizyt
pytanie zadane 4 lutego 2021 w C i C++ przez NukaNuka56 Obywatel (1,080 p.)

92,452 zapytań

141,262 odpowiedzi

319,085 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...