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

Черепашья графика (язык Лого) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить номер подматрицы, среднее арифметическое элементов которой имеет наибольшее значение. http://www.cyberforum.ru/cpp-beginners/thread764800.html
Помогите пожалуйста решить задачу, очень нужно В квадратной матрице A(m,n) рассмотреть квадратные подматрицы размерностью 1, 2, ... , n, причем для всех подматриц левым верхним элементом является элемент А00 исходной матрицы. Определить номер подматрицы, среднее арифметическое элементов которой имеет наибольшее значение. Буду очень благодарна
C++ Заданные две квадратные матрицы одинакового размера - А и В. Переписать в одномерный массив R те элементы матриц А и В, имеющие одинаковые индексы и з Заданные две квадратные матрицы одинакового размера - А и В. Переписать в одномерный массив R те элементы матриц А и В, имеющие одинаковые индексы и значения. В полученном массиве найти первый (а) и последний (b), индексы заданного пользователем натурального числа s. Если число s, встречается в массиве R не менее двух раз, заменить этим числом элемент матрицы с индексами (a mod N; b mod N),... http://www.cyberforum.ru/cpp-beginners/thread764798.html
C++ Алгорит Флойда
Здравствуйте, помогите пожалуйста разобраться в алгоритме Флойда, нахождение наименьших путей во взвешенном графе, Не пойму как выводить пути, сделала матрицу наименьших путей, #include "stdafx.h" #include "iostream" #include "fstream" #include "conio.h"
C++ Среднее значение
Читаю Страуструпа.Сейчас на разделе vector.Решил написать программу которая вычесляет среднее значение с помощью vector'a.Но она не вычесляет среднее.Я уже её с книги можа сазать сказал.Всё равно не хочет. Например ввожу в скомпилированую прогу 2 6 | выдаёт на экран 6 Ввожу 4 20 3 | выдет 3. В чем ошибка? # include <iostream> # include <string> # include <vector> # include <algorithm>
C++ Обобщенное программирование http://www.cyberforum.ru/cpp-beginners/thread764778.html
Всем доброго времени суток.Помогите пожалуйста с идеями и по возможности с реализацией решения вот такой задачи: "Найти наиболее часто встречаемый элемент в последовательности целых чисел {a1, a2,...,an}".Программа должна быть с обобщенными функциями,в этом и проблема. Заранее спасибо.
C++ Обсудите моё задание (Страуструп Б.) Последовательности слов Обсудите моё задание (Страуструп Б. Язык программирования С++. Специальное издание, 3-изд. Бином.2004) 145 ст. задание 11. //прочитайте последовательность слов из потока ввода - 1 //пусть Quit означает конец ввода - 2 //распечатайте слова в порядке их ввода - 3 //исключите из печати одинаковые слова - 4 //Отсортируйте слова перед печатью - 5 подробнее

Показать сообщение отдельно
ins1der
0 / 0 / 0
Регистрация: 08.12.2012
Сообщений: 7

Черепашья графика (язык Лого) - C++

17.01.2013, 20:08. Просмотров 576. Ответов 4
Метки (Все метки)

Хочу смоделировать перемещение черепахи по полю. У черепахи есть перо. Если оно опущено, то на поле остается след, если поднято - следа не будет. При каждом вводе на экране должна отображаться текущая ситуация на поле.
Не могу понять, где совершил ошибку, выдает ошибку в стэке floor. Если есть идеи, подскажите, пожалуйста. Извиняюсь, что код скинул в таком виде, не нашел, как скинуть по другому.


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
76
77
78
79
80
81
82
83
84
85
86
#include <stdio.h>
#include <math.h>
#include <iostream>
#include <time.h>
#define SIZE 10
 
void move(char [SIZE][SIZE]); // моделирует перемещение черепахи
 
int main()
{
    char floor [SIZE][SIZE] = {0};
        move (floor); // вызов функции
        for (int i = 0; i <= SIZE - 1; i++) // печать на экран массива (поля)
        {
            for (int j = 0; j <= SIZE - 1; j++)
                std:: cout << floor [i][j];
            std::cout << "\n";
        }
    return 0;
}
 
void move (char [SIZE][SIZE])
{
    bool pero = 0;
    int count(0);
    char floor [SIZE][SIZE] = {0};
    int i(0),j(0);
    for (int i = 0; i <= SIZE - 1; i++) // инициализируем поле нулями
        for (int q = 0; q <= SIZE -1; q++)
            floor [i][q] = '0';
    floor [0][0] = '#'; // инициализируем элемент массива [0][0] значением # (черепаха)
    char ch;
    std::cin >> ch; // задаем перемещение черепахи
    switch (ch)
    {
        case '5': // перо вниз/вверх
            count++;
            if (count % 2 == 0)
                pero = 0;
            else
                pero = 1;
            break;
        case '4':
            if (floor [i][j] != floor [i][0]) // перемещение влево (на один столбец массива назад)
            {
                floor [i][j] = floor[i][j-1];
                floor [i][j] = '#';
                floor [i][j+1] = '0';
                if (pero)
                    floor [i][j+1] = '1';
                break;
            }
        case '6':
            if (floor [i][j] != floor [i][SIZE]) // перемещение вправо (на один столбец массива вперед)
            {
                floor [i][j] = floor[i][j+1];
                floor [i][j] = '#';
                floor [i][j-1] = '0';
                if (pero)
                    floor [i][j-1] = '1';
                break;
            }
        case '2':
            if (floor [i][j] != floor [0][j]) // перемещение вниз (на одну строку назад)
            {
                floor [i][j] = floor[i-1][j];
                floor [i][j] = '#';
                floor [i+1][j] = '0';
                if (pero)
                    floor [i+1][j] = '1';
                break;
            }
        case '8':
            if (floor [i][j] != floor [SIZE][j]) // перемещение вверх (на одну строку вперед)
            {
                floor [i][j] = floor [i+1][j];
                floor [i][j] = '#';
                floor [i-1][j] = '0';
                if (pero)
                    floor [i-1][j] = '1';
                break;
            }
        else
            break;
    }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru