Loading...
todor.vachev.1 avatar todor.vachev.1 3 Точки

[Домашно] Тема 6, задача 12

Problem 12. Randomize the Numbers 1…N

Write a program that enters in integer n and prints the numbers 1, 2, …, n in random order. 

 

Здравейте, доста време отделих на тази задачка и не мога да разбера защо не ми се получава..

Общо взето идеята ми е да взимам последователно числата от генерирания с подредени числа масив и да ги поставям във нов масив като новата им позиция се генерира от произволно число, новите позиции също ги записвам в масив с цел да проверявам дали вече дадената позиция не е заета и ако е заета генерирам ново число докато се появи число което не е използвано до сега и от това което виждам тук ми е проблема този while цикъл става безкраен..

 

Кодът ми

Тагове:
0
Programming Basics
Anonymous:
Възползвай се от вече готовите теми за домашно -> https://softuni.bg/forum/questions/details/370 (в твоя случай за темата Loops)
TodorovH avatar TodorovH 216 Точки

Здравей,

На пръв поглед масива ти, който е условие на while след като се напълни  и цикъла става безкраен, все едно си сложил условие докато while e true да върти цикъла!!! Дай му някакъв изход, примерно ако размера на масива стане равен на n да спре да ти дава случайни числа!

Дано съм ти бил полезен!

Поздрави!

0
Pavel_R avatar Pavel_R 57 Точки

Здравей, надявам се, че съм разбрал правилно целта на задачката. Честно казано не мога да разбера точно каква ти е идеята. Мисля, че си усложнил нещата без нужда :) Поизтрих няколко реда от кода ти и задачата се получи. Надявам се да съм помогнал. http://pastebin.com/YCZgBJLN

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.