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

Najmniejsza liczba naturalna niemniejsza od wprowadzonej przez użytkownika: algorytm

VPS Starter Arubacloud
0 głosów
442 wizyt
pytanie zadane 13 października 2018 w C i C++ przez Vitall Początkujący (400 p.)

Cześć,
 

siedzę nad zadaniem o następującej treści:

"Napisać program pobierający od użytkownika liczbę naturalną x, a następnie mówiący ile kolejnych liczb naturalnych należy dodać, aby otrzymać najmniejszą liczbę naturalną niemniejszą od x." *

* ja sobie narzuciłem dodatkowo (jak ostatnio), że użytkownik może co najwyżej mieć 5 podejść do wprowadzenia x, jako liczby naturalnej (całkowitej dodatniej).

Czy ktoś z Was ma "sprytniejszy" pomysł na rozwiązanie lub "lepszy" sposób na zapisanie mojego i czy moje jest w ogóle poprawne? Działa mi na wszystkim, co wprowadzam, ale czy to gwarancja poprawności kodu?

Mój program:

#include<iostream>
using namespace std;


		cin >> a;
		cout << endl;
		if (a > 0)
		{
			while (true)
			{
				if (s < a)
				{
					s = s + (i+1);
					i++;
					
				}
				else
					break;
			}
			
			cout << "Aby otrzymac najmniejsza liczbe (calkowita) niemniejsza od podanej, \nnalezy dodac do siebie "
				 << i << " kolejne liczby naturalne.";
			break;
				 
		}
		else 
		{
			liczba_prob ++;
			cout << "Twoja liczba jest niedodatnia, \nzostalo Ci:  " <<  5 - liczba_prob 
				 << " prob. \nWprowadz liczbe: ";
		}
	}
	while (liczba_prob != 5);
	
	if (liczba_prob == 5)
	{
		cout << "Wyczerpales limit podejsc!";
		return 0;
	}
	else
	{
		cout << "Wykorzystales: " << liczba_prob << " prob.";
		return 0;
	}
		
	
}

 

komentarz 14 października 2018 przez X3h Dyskutant (9,540 p.)
Jakie są przykładowe dane testowe? Jakiej złożoności obliczeniowej i pamięciowej oczekujemy? Jakie są ograniczenia dla zmiennych? 'Napisać program' OK pobierający od użytkownika liczbę naturalną x, OK a następnie mówiący ile kolejnych liczb naturalnych należy dodać, aby otrzymać najmniejszą liczbę naturalną niemniejszą od x. Zawsze dwie 1 i o jeden mniejszą od x. No chyba, że są pewne informacje, które nie zostały zawarte w pytaniu.
komentarz 14 października 2018 przez Vitall Początkujący (400 p.)
Jest tylko polecenie, nie ma żadnych przykładów wejścia/wyjścia, niestety.
Nie wiem jakiej złożoności obliczeniowej i pamięciowej oczekujemy, ale chyba, wg mnie, zawsze chcemy zająć jak najmniej miejsca, pamięci i czasu - chcemy by było optymalnie. Tak sądzę, ale jest tylko treść zadania i nic więcej, dlatego wrzuciłem na forum, żeby sprawdzić, czy to jest ok.

1 odpowiedź

0 głosów
odpowiedź 20 października 2018 przez El Lirón Obywatel (1,350 p.)
Napisać program pobierający od użytkownika liczbę naturalną x, a następnie mówiący ile kolejnych liczb naturalnych należy dodać, aby otrzymać najmniejszą liczbę naturalną niemniejszą od x

Coś mi nie pasuje w treści tego zdania. Najmniejsza liczba naturalna nie mniejsza od x to... x ;)

Podobne pytania

0 głosów
0 odpowiedzi 332 wizyt
pytanie zadane 7 sierpnia 2021 w C i C++ przez Wiktor51207 Początkujący (380 p.)
0 głosów
2 odpowiedzi 957 wizyt
pytanie zadane 14 października 2018 w C i C++ przez Vitall Początkujący (400 p.)
0 głosów
1 odpowiedź 768 wizyt
pytanie zadane 8 października 2018 w C i C++ przez Vitall Początkujący (400 p.)

93,014 zapytań

141,977 odpowiedzi

321,268 komentarzy

62,355 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

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...