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

Программа проверки двумерного динамического массива на простое число - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Помощь начинающему С++ http://www.cyberforum.ru/cpp-beginners/thread894306.html
Доброго времени суток, уважаемые форумчане! Мне 23 года, работаю менеджером по продажам авто, женат, жду ребенка, образование - логистика, перевозки на автотранспорте. С программированием ранее знаком небыл вовсе. По технической части ПК - ознакомлен очень хорошо, с 9 лет перебирать начал. Исходя из информации о востребованности, моему личному к этому интересу и уровне заработка, решил...
C++ Dev C++ Скачал Dev C++ и тут такая фигня: хочу запустить программу и пишет что проект не откомпилирован. Жму скомпилировать а потом выполнить и то же самое. Как запустить? http://www.cyberforum.ru/cpp-beginners/thread894300.html
C++ инициализация SDL
подключил #include "SDL.h" - проверил, запустилось. добавил первую строку из статьи про работу сдл SDL_Init(SDL_INIT_VIDEO); вылетает ошибка линковщика error LNK2028: unresolved token (0A000647) "extern "C" int __cdecl SDL_Init(unsigned int)" (?SDL_Init@@$$J0YAHI@Z) referenced in function "private: void __clrcall new_visual::Form1::trackBarGain_Scroll(class System::Object ^,class...
разобрать код (минимаксная задача коммивояжера) C++
Вот условие задачи, чтобы было понятнее: Решить минимаксную задачу коммивояжера методом полного перебора с использованием булевых переменных. Код: // Commivoyager_minmax.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "string.h"
C++ Как проверить, быль ли удалён указатель или нет? http://www.cyberforum.ru/cpp-beginners/thread894271.html
С похмелья голову заклинило %-) X* x=new X(); delete x; if(x) ? или как? Как проверить, удалён на данный момент указатель или нет? :fie: P.S.: стыдно за вопрос ....
C++ Сортировка односвязного списка ребят, нужна помощь, учусь на втором курсе для зачета нужно написать сортировку односвязного списка. а мы такого рода программы не изучали... список должен быть в отдельном файле список Head:2 № Фамилия Имя Факультет Курс Группа Год_рождения Next 1 Афанасьев Сергей ЭК 2 01-11 1994 3 2 Михайлов Андрей ДиКТ ... подробнее

Показать сообщение отдельно
Kinroom
1 / 1 / 0
Регистрация: 13.12.2012
Сообщений: 99
07.06.2013, 14:21  [ТС]     Программа проверки двумерного динамического массива на простое число
Цитата Сообщение от AntonChik Посмотреть сообщение
ок. разобрался. с этим все нормально, но лучше все равно так не делать имхо...

нашел еще одну опечатку в 39 строке, должно быть i=0
из-за этого падало
аналогично в строках 29,30
Спасибо,исправил.В 29 и 30 должна оставаться индексация от 1,но в 34 строчке я добавил к i и j +1.Выводит корректно. В матрицу все переписал,но не понял как сделать так чтобы она заполнилась без пустых мест,поэтому заполнил их нулями.Думаю это не правильно,но по другому никак, в общем спасибо. P.S если знаете как сделать так чтобы выводило матрицу только из простых чисел подскажите пожалуйста(например 5 простых чисел, матрица где будет в столбика по 3 и в одном 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
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
57
58
59
60
#include <iostream>
#include <math.h>
#include <Windows.h>
using namespace std;
 
bool prime(int n);
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);   
    int n,m,k;
    k=0;
    cout<<"Введите количество строк ";
    cin>>n;
    cout<<"Введите количество столбцов ";
    cin>>m;
 
    int** a =new int* [n];
    for(int i=0;i<n;i++){
    a[i]=new int[m];}
    for(int i=0;i<n;i++){
    for(int j=0;j<m;j++){
        a[i][j]=rand()%100+1;
        cout.width(3);
        cout<<a[i][j]<<" ";}
        cout<<endl;
    }
       cout<<"Позиции простых элементов и они сами:\n";  
       for (int i=1;i<n;i++)
       for(int j=1;j<m;j++)
           if( prime(a[i][j] ))
           {
         k++;
        cout<<"a["<<i+1<<"]["<<j+1<<"]="<<a[i][j]<<" ";
        cout<<endl;
           }
           cout<<"Количество простых чисел равно="<<k<<"\n";
           int** a1=new int*[n];
           for(int i=0;i<n;i++) {
           a1[i]=new int[m]; }
           for(int i=0;i<n;i++){
           for(int j=0;j<m;j++){
           if(prime(a[i][j])) { 
             a1[i][j]=a[i][j];}
             else a1[i][j]=0;
             cout.width(3);
             cout<<a1[i][j]<<" ";}
             cout<<endl;}
           }
    
        
    
    bool prime(int n){
        int i;
        for(i=2;i<=sqrt((double)n);i++){
            if (n%i==0)
                return false;}
                return true;
    }
 
Текущее время: 00:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru