Регистрация не е нужна, освен при създаване на тема в "Задача на седмицата".

Конзолно приложение

Конзолно приложение

Мнениеот Гост » 30 Сеп 2023, 23:56

Здравейте! Трябва ми малко помощ относно тази задачка:"По въведено естествено число N от интервала [10..10010] да се генерират N броя псевдослучайни нечетни естествени числа от интервала [100..999].
Програмата да използва структура стек за съхраняване на числата. Да се изведат принадлежащите на стека всички прости числа, както и тяхната сума.
Пример: N=10 Изход: 991; 957; 315; 591; 981; 881; 865; 465; 433; 851
само прости числа: 433; 881; 991
сума на прости числа: 2305"
Няколко дни се опитвам да съставя код, но не успявам. Благодаря предварително за помощта!
Гост
 

Re: Конзолно приложение

Мнениеот peyo » 01 Окт 2023, 07:20

Гост написа:...Няколко дни се опитвам да съставя код, но не успявам...


И това в ерaта на ChatGPT4 и Bard?! На мен Бард ми написа кода от втория път, но това защото първия път ми го написа на Python, а аз не казах на какъв език го искам.

Бъдещето на програмирането е изключително любопитно!
peyo
Математик
 
Мнения: 1768
Регистриран на: 16 Мар 2019, 09:35
Местоположение: София
Рейтинг: 664

Re: Конзолно приложение

Мнениеот Гост » 01 Окт 2023, 11:57

```cs
using System;
using System.Collections.Generic;
using System.ComponentModel.Design;
using System.Reflection;
namespace _12_zadacha
{
internal class Program
{
static void Main(string[] args)
{
int n = int.Parse(Console.ReadLine());
Random random = new Random();
Stack<int> stack = new Stack<int>();
int sumOfPrimes = 0;
int i = 0;
while (i < n)
{
int number = random.Next(100, 1000);

if (number % 2 != 0)
{
stack.Push(number);
Console.Write(number + "; ");
i++;
}
}
Console.WriteLine();
while (stack.Count > 0)
{
if (IsPrime(stack.Peek()))
{
sumOfPrimes += stack.Peek();
Console.Write(stack.Peek() + "; ");
}
stack.Pop();
}
Console.WriteLine();
Console.WriteLine(sumOfPrimes);
}
static bool IsPrime(int number)
{
for (int i = 2; i < Math.Sqrt(number); i++)
if (number % i == 0)
{
return false;
}
return true;
}
}
}
```
Гост
 

Re: Конзолно приложение

Мнениеот pal702004 » 01 Окт 2023, 15:42

int number = random.Next(100, 1000);

if (number % 2 != 0)


int number = 2*random.Next(50, 500)+1;

Проверката за простота няма да я коментирам...
pal702004
Математик
 
Мнения: 1487
Регистриран на: 23 Сеп 2013, 19:47
Рейтинг: 1402


Назад към C#, Java



Кой е на линия

Регистрирани потребители: Google [Bot]

Форум за математика(архив)