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

Двумерный массив (подсчитать количество звездочек) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Недостатки данного кода С++ http://www.cyberforum.ru/cpp-beginners/thread860675.html
Здравствуйте, Уважаемые Форумчане! Подскажите, пожалуйста. Что не так в этом коде? Перечислите недостатки, которые вы видите. Предложите свой вариант рефакторинга. #include <stdio.h> class Feature { public: enum FeatureType {eUnknown, eCircle, eTriangle, eSquare}; Feature() : type(eUnknown), points(0) { }
C++ Дерево. Поуровневая связь Имеется структура следующего вида: struct BinTree { int key; Node* left; Node* right; Node* level; }; Нужно написать функцию которая осуществляет связь при помощи указателя level на стуктуру такого же типа по схеме (за ранее подразумевается что указатели level = 0): http://www.cyberforum.ru/cpp-beginners/thread860655.html
C++ С++ not implemented in type 'istream' for arguments of type 'float *'из-за чего эта ошибка и как исправить?
Написал программу для расчёта площади четырёхугольника и круга. Использовал простые операторы присвоения. Всё работало как надо. Но прочитав ещё раз условие своей курсовой заметил, что нужно обязательное использование структуры (struct). Начал переделывать и столкнулся с тем, что при компиляции выдаёт ошибки... Одна из них (встречается 3 раза из 5) это "not implemented in type 'istream' for...
C++ Перенос Microsoft Visual C++ 2010 Express
Есть небольшой вопрос: На ноутбуке стоит Microsoft Visual C++ 2010 Express. Можно ли его как-нибудь перенести на компьютер, или придётся качать заново?
C++ и снова массивы (поиск, сортировка) http://www.cyberforum.ru/cpp-beginners/thread860641.html
ребят, пытаюсь написать код который: 1) выводит двумерную массив 2) осуществляет последовательный поиск 3) переводит в одномерный массив 4) сортирует двумерный массив 5) осуществляет двумерный поиск первые 3 пункта я сделал, в 4 выдает ошибку, подскажите пожалуйста что не так.. #include "stdafx.h" #include <iostream> #include <iomanip>
C++ скриншот экрана! нужно сделать захват экрана. и сохранить его в файл. порывшись в просторах форума, выяснил что для решения данной задачи существует куча путей. дайте легкий примерчик или ткните носом в документацию! подробнее

Показать сообщение отдельно
Vista54
Сообщений: n/a
10.05.2013, 15:38     Двумерный массив (подсчитать количество звездочек)
Доброго времени суток, товарищи программисты. Я учусь на программиста, и вот перед мной встала такова задача. Которую я не могу преодолеть.
Задача: Написать двумерный массив символьного типа из звездочек и точек, в рендомном порядке, и подсчитать количество звездочек в массиве. Условие: Если звездочки идут подряд, в рядке или строке то считать их как одну.
Я вот что наработал:
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include <iostream>
#include <time.h>
using namespace std;
 
void main()
{
char a[20][20];
int n;
srand(time(NULL));
for (int i=0;i<20; i++)
{
for(int j=0; j<20; j++)
{
n=rand()%2;
if (n==1) a[i][j]='.'; else a[i][j]='*';
cout<<a[i][j];
}
cout<<endl;
}
}
Выводиться двумерный массив, из звездочек и точек.
Дальше проблема.
Думаю сделать что бы через условие, если идет подряд 2 звездочки, то считай как одну, и переписывай массив, до тех пор, когда массив совсем не упроситься.
 
А есть еще идея удалять те которые идут подрят по одной.
 
Еще вот что с кодом придумал, но не знаю как его оформить правильно. Буду заранее благодарен!!!
сhar temp[20] = a[1];
int stars = 0;
bool on_star = false;
for (i=0;i<20;i++)
if (temp[i] == '*' && !on_star){stars++;
on_star = true;}
 
if (temp[i] == '.'
on_star = false; 
 
Так же есть вариант:
#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
int main()
{
    char a[20][20];
    int n;
    srand(time(NULL));
    for (int i=0;i<20;i++)
    {
        for(int j=0;j<20;i++)
    {
    n=rand()%2;
    if(n==1) a[i][j]='.'; 
    else a[i][j]='*';
        }
    }
 
      int starCout=0;
    for (int i=0;i<20;i++)
    {
        if(a[i][0]=='*')
        {
            int startCout;
            startCout++;
        }
        for (int j=0;j<20;j++)
        {
            if(a[i][j]=='*' && a[i][j-1]!=a[i][j])
            {
                startCout++;
            }
        }
    }
    return 0;
}

Всеравно не выходит
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru