Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
15 / 15 / 4
Регистрация: 11.04.2013
Сообщений: 181
1

Мин/макс. из n чисел; простые числа

16.11.2013, 19:52. Показов 840. Ответов 6
Метки нет (Все метки)

Написать программу нахождения минимального и максимального из n (n>0) введенных чисел.
Вывести все простые числа в интервале от 1 до N. Сделать, используя циклы while, do/while, for.

Знаю, что легкие задачи, сам делал когда-то давно, уже забыл. Напомните, пожалуйста.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.11.2013, 19:52
Ответы с готовыми решениями:

Найти сумму чисел, которые находятся между Мин. и Макс по модулю элементами массива
Есть такая вот задача: Найти сумму чисел, которые находятся между Мин. и Макс по модулю элементами...

Мин-макс в списке
не получается найти минимальный и максимальный элементы в списке: struct Node {int d,a; int...

Мин. и макс. элементы в файле
Не находит мин. и макс. элементы. Где ошибка? int max=0,min=0;...

список мин и макс элемент
Дан список из целых чисел, найти первое из всех минимальных значений и последнее из всех...

6
15 / 15 / 4
Регистрация: 11.04.2013
Сообщений: 181
21.11.2013, 11:27  [ТС] 2
Помогите хотя бы с простыми числами.

[
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdio.h>
#include <conio.h>
 
void main()
{
  int n,i,j,f;
  clrscr();
  do
    {
     printf("Введите целое положительное число n\n");
     scanf("%d", &n);
    }
  while (n<0);
  for (i=2;n;);
    {
      f=1;
      j=2;
      while (j*j<=i && f==1)
    {
      if (i%j==0)
        f=0;
      else
        j=j+1;
      if (f==1)
        printf("%d ", i);
    }
    }
  getch();
}
Зацикливание.
0
540 / 436 / 355
Регистрация: 05.11.2013
Сообщений: 1,208
Записей в блоге: 6
21.11.2013, 11:33 3
C++
1
2
  for (i=2;n;);
    {
->
C++
1
2
  for (i=2;i<=n;i++)
    {
простая функция определения простого числа:
C++
1
2
3
4
5
6
7
8
int simple (unsigned long int n) {
 unsigned long int i,l=floor(sqrt(n));
 if (n<2) return 0; //1 - не простое
 else if (n<4) return 1; //2,3 - простые
 else if (n%2==0) return 0; //четные - не простые
 for (i=3; i<=l; i+=2) if (n%i==0) return 0;
 return 1;
}
0
15 / 15 / 4
Регистрация: 11.04.2013
Сообщений: 181
21.11.2013, 11:36  [ТС] 4
Не зацикливается, но выводит чушь

Добавлено через 36 секунд
Нужно через цикл без функций.
0
540 / 436 / 355
Регистрация: 05.11.2013
Сообщений: 1,208
Записей в блоге: 6
21.11.2013, 11:38 5
Цитата Сообщение от Rakot568 Посмотреть сообщение
Не зацикливается, но выводит чушь
а ты и не спрашивал, не чушь ли пишешь.

Цитата Сообщение от Rakot568 Посмотреть сообщение
Нужно через цикл без функций
возьми содержимое функции и перенеси в главную программу
0
15 / 15 / 4
Регистрация: 11.04.2013
Сообщений: 181
21.11.2013, 12:06  [ТС] 6
Я взял программу отсюда: Цикл: Вывести все простые числа в диапазоне от 1 до N и переписал на с.
На Pascal все работает, на с - нет.
0
540 / 436 / 355
Регистрация: 05.11.2013
Сообщений: 1,208
Записей в блоге: 6
21.11.2013, 12:58 7
Цитата Сообщение от Rakot568 Посмотреть сообщение
На Pascal все работает, на с - нет.
Программа по твоей ссылке, будучи переписанной на Си, работает прекрасно:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <conio.h>
 
int n,i,j,f;
int main () {
clrscr();
do {
 printf ("Введите целое положительное число n=");
 scanf("%d",&n);
} while (n<0);
for (i=2 ; i<=n; i++) {
 f=1;
 j=2;
 while (j*j<=i && f) {
  if (i%j==0) f=0;
  else j++;
 }
 if (f) printf ("%d ",i);
}
fflush(stdin); getchar();
return 0;
}
Тест:
Введите целое положительное число n=20
2 3 5 7 11 13 17 19
ТЫ поместил в двойной цикл
C
1
2
if (f==1)
        printf("%d ", i);
чего автор той программы отнюдь не делал:
Pascal
1
2
3
4
while(j*j<=i)and f do {подразумевается begin}
  if i mod j=0 then f:=false
  else j:=j+1; {подразумевается end;}
  if f then write(i,' ')
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.11.2013, 12:58

Помощь в написании контрольных, курсовых и дипломных работ здесь.

двумерный массив макс мин
кодеры помогите срочно нужен код на Dev-C++ учу дев но на заочке еще нив чем не разобрался...

Одномерный массив макс мин
Вообщем не могу выполнить 1\2 сумму нашел всё работает нормально но вот макс мин не могу найти и...

Определить макс и мин цифры
Дано натуральное число (вводится с клавиатуры) 1) Определить две его максимальные цифры 2)...

Поменять местами макс и мин элементы с++
Здравствуйте,я недавно начал пытаться программировать на этом языке, Задание следующее: в матрице...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.