Форум программистов, компьютерный форум CyberForum.ru

Найти 100 первых простых чисел - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Чтение директории http://www.cyberforum.ru/cpp-beginners/thread47421.html
Киньте пример на "чистом" C++ чтения директории. Т.е. надо прочесть директорию, записать все имена файлов и поддиректорий в массив записей. Запись состоит из двух полей - строка с именем и поле с флагами. Ключевая проблема - как отличать файлы от директорий. Ну и до кучи - отличить файл от устройства, прочитать атрибуты/права, владельца и т.п. Спасибо.
C++ operator[] есть класс CItem, в качестве члена указан список CList<CVariant> data; как будет выглядеть operator класса CItem, чтобы данный код сработал? CItem item; item = CVariant("some data =)"); ASSERT(item.data == CVariant("some data")); http://www.cyberforum.ru/cpp-beginners/thread47416.html
Связные списки C++
Я практически полный нуб в С++. Вот такая задача: В столовой предлагаются N комплексных обедов, состоящих из Q блюд. Известна стоимость и калорийность каждого блюда. Сколько стоит самый деше¬вый и самый дорогой обед? Сколько калорий включает в себя самое калорийное блюдо? Есть вот такая реализация с помощью структур и векторов: #include <iostream> #include <iomanip> #include <string> #include...
C++ А есть ли здесь разработчики под SymbianOS (С++)?
Просто накопилось много вопросов, стоит ли их здесь задавать? на других форумах(рус.) посвященных Symbian не такого живого обсуждение. :)
C++ Сравнение числовых массивов http://www.cyberforum.ru/cpp-beginners/thread47319.html
Есть два числовых массива в одном 4 элемента в другом 5 (то есть разное количество) Как с помощью C++ можно сравнить эти массивы Нужно сравнить каждый элемент с каждым как я понимаю это надо делать с помощью цикла for или while но не могу придумать как именно за один проход цикла сравнить один элемент со всеми и так до конца
C++ Работа с объектами внутри класса. Вот два класса подскажите что здесь не так. Функция sh класса Engine должна вызвать функцию showhello класса Obj #pragma once class Engine { public: Engine(void); public: подробнее

Показать сообщение отдельно
Olga_
 Аватар для Olga_
840 / 182 / 16
Регистрация: 01.08.2011
Сообщений: 502
01.08.2011, 23:07     Найти 100 первых простых чисел
N 1

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
#include<stdio.h>
 
int Prime (unsigned int n)
{
   if (n == 0 || n == 1) return 0;
   else
   {
      unsigned int i = 2;
      while (i*i <= n && n % i != 0)
         i++;
      return (i*i > n);
   }
}
 
int main()
{
   unsigned int i, n;
   printf("%d\n", 2);
   n = 1;
   for (i = 3; n < 100; i += 2)
      if (Prime(i))
      {
         printf("%d\n", i);
         n++;
      }
   getchar();
   return 0;
}


N 2

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<stdio.h>
 
void Print(int n)
{
   int i;
   i = 1;
   while(i*i <= n)
   {
       printf("%d\n", i);
       i++;
   }
}
 
int main()
{
   int n;
   scanf("%d", &n);
   Print(n);
   return 0;
}


N 3

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void Inverse(int *x, int n)
{
   int i, j;
   i = 0;
   j = n - 1;
   while(i < j)
   {
      x[i] ^= x[j];
      x[j] ^= x[i];
      x[i] ^= x[j];
      i++;
      j--;
   }
}


N 4

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<stdio.h>
#include<string.h>
 
int Equal(char *s, int i, int j)
{
   return (i >= 0 && j < strlen(s) && s[i] == s[j]);
}
 
int main()
{
   char s[500];
   fgets(s, 500, stdin);
   printf("%s\n", Equal(s, 2, 4) ? "yes" : "no");
   getchar(); getchar();
   return 0;
}


N 5

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
#include<stdio.h>
#include<string.h>
 
int SubString(char *s, int i, int j, char *t)
{
   if (i >=0 && j < strlen(s) && i <= j)
   {
       strncpy(t, &s[i], j - i +1);
       t[j - i + 1] = '\0';
       return 1;
   }
   else
      return 0;
}
 
int main()
{
   char s[500], t[500];
   int i, j;
   fgets(s, 500, stdin);
   scanf("%d", &i);
   scanf("%d", &j);
   if (SubString(s, i, j, t))
      puts(t);
   getchar(); getchar();
   return 0;
}


N 6

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include<stdio.h>
#define M 5      /* ÷èñëî ñòðîê Г¬Г*òðèöû */
#define N 10     /* ÷èñëî ñòîëáöîâ */
 
void Init(int a[M][N], int m, int n)
{
   int i, j;
   for (i = 0; i < m; i++)
      for (j = 0; j < n; j++)
         a[i][j] = rand()%100;
}
 
void Print(int a[M][N], int m, int n)
{
   int i, j;
   for (i = 0; i < m; i++)
   {
      for (j = 0; j < n; j++)
         printf("%4d", a[i][j]);
      printf("\n");
   }
}
 
int Max(int a[M][N], int m, int n, int k)
{
   int max, i;
   max = a[k][0];
   for(i = 1; i < n; i++)
      if (a[k][i] > max)
         max = a[k][i];
   return max;
}
 
int main()
{
   int a[M][N];
   int min, max, i;
   Init(a, M, N);
   Print(a, M, N);
   min = Max(a, M, N, 0);
   for (i = 1; i < M; i++)
   {
      max = Max(a, M, N, i);
      if (max < min)
         min = max;
   }
   printf("min = %d\n", min);
   getchar();
   return 0;
}


N 7

C
1
2
3
4
5
6
7
8
void Zamena(int a[N][N], int n)
{
   int i, j;
   for (i = 0; i < n; i++)
      for (j = 0; j < n; j++)
         if (i != j && j != n - 1 - i)
            a[i][j] = 1;
}


N 8

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include<stdio.h>
#define N 10
 
void Init(int a[N][N], int n)
{
   int i, j;
   for (i = 0; i < n; i++)
      for (j = 0; j < n; j++)
         a[i][j] = rand()%10 - 5;
}
 
void Print(int a[N][N], int n)
{
   int i, j;
   for (i = 0; i < n; i++)
   {
      for (j = 0; j < n; j++)
         printf("%4d", a[i][j]);
      printf("\n");
   }
}
 
int Count(int a[N][N], int n, int k, int x)
{
   int i, count = 0;
   for (i = 0; i < n; i++)
      if (a[k][i] == x)
         count++;
   return count;
}
 
int main()
{
   int a[N][N];
   int max, i, count, num_i, flag;
   Init(a, N);
   Print(a, N);
 
   flag = num_i = max = 0;
   for (i = 0; i < N; i++)
   {
      count = Count(a, N, i, 0);
      if (count > max)
      {
         flag = 1;
         max = count;
         num_i = i;
      }
   }
   if (flag)
      printf("i = %d\n", num_i);
   else
      printf("в матрице нет нулевых элементов");
   getchar();
   return 0;
}


N 9

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
#include<stdio.h>
#define M 5
#define N 10
 
int Max(int a[M][N], int m, int n, int k)
{
   int max, i;
   max = a[k][0];
   for(i = 1; i < n; i++)
      if (a[k][i] > max)
         max = a[k][i];
   return max;
}
 
int main()
{
   int a[M][N];
   int i;
   /* заполнение матрицы */
   for (i = 0; i < M; i++)
      printf("%d\n", Max(a, M, N, i));
   getchar();
   return 0;
}


N 10 и N 11 тоже крайне простые.

Читайте книги, например, http://www.twirpx.com/file/540580/

Добавлено через 3 часа 31 минуту
Цитата Сообщение от Asylbek Посмотреть сообщение
прошу вашей помощи....я совсем не разбираюсь в области программирования

13.4 Преобразование массива
Удаление и вставка элементов

Array101. Дан массив размера N и целое число K (1 ≤ K ≤ N). Перед элементом массива с порядковым номером K вставить новый элемент с нулевым значением....
А кто умеет эффективно удалять элементы из массива? Это вопрос на засыпку. Это очень просто, но все же
 
Текущее время: 01:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru