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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 95, средняя оценка - 4.89
Neetrino
0 / 0 / 0
Регистрация: 10.02.2010
Сообщений: 11
#1

Псевдокод - C++

13.02.2010, 12:57. Просмотров 12065. Ответов 13
Метки нет (Все метки)

Ребята помогите написать псевдокод к программе !вообще не знаю как его делать и с чем его едят ((((
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
87
88
89
90
#include<iostream>
#include<windows.h>
#include<string.h>
using namespace std;
 
 
 
void print_word(char * w){
        int i = 0;
        while (w[i])
                cout << w[i++] << " ";
}
 
int main ()
{
SetConsoleOutputCP(1251);
SetConsoleCP(1251);
 
char slovo[]="принтер";
char slovo2[64];
int count,len,i,j,f,gchars;
char sym,n;
 
len = strlen(slovo);
 
for ( i = 0,slovo2[len] = 0; i < len; i++ )
        slovo2[i] = '*';
 
cout<<"Что наша жизнь - ИГРА..."<<endl;
cout<<"СЛОВО: "; 
print_word(slovo2);
cout<<endl<<endl;
 
cout<<"Уровень сложности игры"<<endl;
cout<<"[1] Сложный (5 попыток)"<<endl;
cout<<"[2] Средний (8 попыток)"<<endl;
cout<<"[3] Легкий (12 попыток)"<<endl;
cout<<"Ваш выбор (1, 2 или 3) ---> ";
cin>>n;
 
switch (n){
        case '1': count = 5; break;
        case '2': count = 8; break;
        case '3': count = 12; break;
        default:
        cout << "Неверный выбор!" <<endl;
        return -1;
}
cout << "В вашем распоряжении " << count << " попыток ( уровень " << n << ")" << endl;
for ( i = 1,gchars = 0; i <= count; i++ ){
        cout << endl<< "попытка #" << i << " символ: ";
        cin >> sym;
        for ( j = 0, f = 0; j < len; j++ )
                if ( slovo[j] == sym ){
                        slovo2[j] = sym;
                        f = 1;
                }
        if (f)  {   
                gchars++;
                cout << "[+]";
        }
        else
                cout << "[-]";
 
        cout << "СЛОВО:"; print_word(slovo2); cout << endl;
 
        if (!strcmp(slovo,slovo2))
                break;
}
 
if ( i > count ){
        cout<< endl<<"Все " << count << "попыток использованы!" << endl;
        cout<< "Введите СЛОВО:";
        cin >> slovo2;
}
 
cout << endl;
 
if ( !strcmp(slovo,slovo2) ){
        cout << "Поздравляем! Вы угадали - это СЛОВО " << slovo << endl;
        cout << "( результат " << i << " попыток - " << len << " букв)" << endl;
}
else {
        cout << "Увы! Вы не угадали - это СЛОВО " << slovo << endl;
        cout << "( результат " << count << " попыток - " << gchars << " букв)" << endl;
}
 
return 0;
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Акелла
Сонный металюга
45 / 45 / 6
Регистрация: 10.05.2009
Сообщений: 295
13.02.2010, 14:03     Псевдокод #2
Псевдоко́д — компактный (зачастую неформальный) язык описания алгоритмов, использующий ключевые слова языков программирования, но опускающий несущественные подробности и специфический синтаксис. Псевдокод обычно опускает детали, несущественные для понимания алгоритма человеком. Такими несущественными деталями могут быть описания переменных, системно-зависимый код и подпрограммы. Главная цель использования псевдокода — обеспечить понимание алгоритма человеком, сделать описание более воспринимаемым, чем исходный код на языке программирования. Псевдокод широко используется в учебниках и научно-технических публикациях, а также на начальных стадиях разработки компьютерных программ.
зависит от того что от тебя требуется под "переписать на псевдокоде". может тебе надо просто понять логику работы программы и выразить это так сказать своим языком? ну словно ты пытался бы объяснить ее кому то.
Neetrino
0 / 0 / 0
Регистрация: 10.02.2010
Сообщений: 11
13.02.2010, 14:08  [ТС]     Псевдокод #3
не псевдокод это помоему типо того
"Начало
Объявить массив i
Открыть файл
Считать из файла строку
Добавить строку в массив i
Закрыть файл
Вывести кол-во элементов массива i
Конец"

только я не пойму всю прогу наа так делать и со своей не совсем понимаю как((можете написать плс...А дальше я сам попробюую просто пмне нада к 5и прогам псевдокоды..вот
Акелла
Сонный металюга
45 / 45 / 6
Регистрация: 10.05.2009
Сообщений: 295
13.02.2010, 14:20     Псевдокод #4
ну на счет всю прогу или не всю - это надо у препода спрашивать. вообще малейшие непонятки - сразу валить вопросами - потом самому мучится меньше. по студенческомы опыту небольшому говорю

для примера.
псевдокод:
C++
1
2
3
4
5
процедура print_word(символный указатель w){
целое i = 0;
пока w[i] истинно (пока i элемент массива w существует)
вывести на экран w[i++](следующий элемент w) вывести  " "(пробел);
}
исходная:
C++
1
2
3
4
5
void print_word(char * w){
int i = 0;
while (w[i])
cout << w[i++] << " ";
}
может я не совсем формальный псевдокод привел но логика понятно. псевдокод тем и хорош что ты сам накладываешь так сказать степень формальности и придумываешь синтаксис
borissuworov
Сообщений: n/a
03.04.2013, 12:00     Псевдокод #5
Сам являюсь ламаком четвёртой стадии, хотя однажды допёр просто перевести все команды языка C на русский язык. Удивительно, но получилось добротно.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
03.04.2013, 12:12     Псевдокод #6
Цитата Сообщение от Neetrino Посмотреть сообщение
Ребята помогите написать псевдокод к программе !вообще не знаю как его делать и с чем его едят ((((
Псевдокод есть помесь естественного языка, языка программирования и математической нотации, в которой сохранена структура программы на языке программирования и использованы идентичные управляющие конструкции, но операции записаны так, как будет легче понять человеку, возможна прямая замена инструкций комментариями.

Добавлено через 3 минуты
Цитата Сообщение от Акелла Посмотреть сообщение
может я не совсем формальный псевдокод привел но логика понятно.
Псевдокод ни в коем случае и не должен быть полностью формализован, это скорей естественный недоязык программистов только для обсуждения алгоритмов, чем искусственный язык.
Kastaneda
Форумчанин
Эксперт С++
4259 / 2791 / 219
Регистрация: 12.12.2009
Сообщений: 7,120
Записей в блоге: 1
Завершенные тесты: 1
03.04.2013, 12:48     Псевдокод #7
Цитата Сообщение от Neetrino Посмотреть сообщение
C++
1
2
3
4
5
void print_word(char * w){
    int i = 0;
    while (w[i])
        cout << w[i++] << " ";
}
этот кусок будет выглядеть как-то так
Код
i <- 0
until w[i] <> 0
    print w[i]
    i <- i + 1
repeat
остальное по аналогии.

нет единого синтаксиса псевдокода, тот, что у меня в примере, это синтаксис псевдокода из учебной методички.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
03.04.2013, 14:30     Псевдокод #8
Цитата Сообщение от Kastaneda Посмотреть сообщение
этот кусок будет выглядеть как-то так
C++
1
2
3
4
5
i <- 0
until w[i] <> 0
* * print w[i]
* * i <- i + 1
repeat
Сойдёт за pseudocode на базе английского, если сдавать преподавателю-англичанину/американцу/австралийцу, или использовать в обсуждении с коллегой аналогичной национальности, а так лучше
Код
присвоить переменной i значение 0
пока (существует w[i])
{
 вывести w[i] и пробел
 увеличить i на 1
}
, кроме того, until - это пока не, а while - просто пока, твой псевдокод соотвествует
C++
1
2
3
4
5
int i = 0;
while (!(w[i]<>0))
{
  cout << w[i++] << " ";
}
.
Kastaneda
03.04.2013, 14:41
  #9

Не по теме:

Цитата Сообщение от taras atavin Посмотреть сообщение
кроме того, until - это пока не, а while - просто пока, твой псевдокод соотвествует
until - до тех пор, пока ...

Цитата Сообщение от taras atavin Посмотреть сообщение
а так лучше
довольно спорное утверждение.

taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
03.04.2013, 14:45     Псевдокод #10
Цитата Сообщение от Kastaneda Посмотреть сообщение
until - до тех пор, пока ...
это til, или while, until - пока не, потому и на паскале цикл repeat until работает с обратным условием.
Kastaneda
Форумчанин
Эксперт С++
4259 / 2791 / 219
Регистрация: 12.12.2009
Сообщений: 7,120
Записей в блоге: 1
Завершенные тесты: 1
03.04.2013, 14:53     Псевдокод #11

Не по теме:

Цитата Сообщение от taras atavin Посмотреть сообщение
это til, или while, until - пока не, потому и на паскале цикл repeat until работает с обратным условием
что-то ты меня с толку сбил.
Цитата Сообщение от https://translate.google.ru/?hl=ru&tab=wT#en/ru/until
предлог
до to, before, until, till, prior to, unto
не раньше until, till

союз
до тех пор пока until, so long as, till, as

Цитата Сообщение от taras atavin Посмотреть сообщение
цикл repeat until работает с обратным условием.
хм, кажись я понял почему у меня алгоритмы из методички "неработают" приду домой, поробую реализовать их с этой логикой.



Может кто-то третий свое слово вставит по этому поводу?
ya_noob
_
201 / 145 / 9
Регистрация: 08.10.2011
Сообщений: 432
03.04.2013, 14:54     Псевдокод #12
странное явление, тема ожила через 3 года забвения
Kastaneda
Форумчанин
Эксперт С++
4259 / 2791 / 219
Регистрация: 12.12.2009
Сообщений: 7,120
Записей в блоге: 1
Завершенные тесты: 1
03.04.2013, 18:50     Псевдокод #13
taras atavin, да, ты был прав по поводу until.

Не по теме:

Я контрольные делаю, в методичке даны описания алгоритмов на псевдокоде. Ну я залез в гугл-транслейт, увидел, что until это "до тех пор пока", и интуитивно предположил, что

Код
repeat 
...
until condition
это тоже самое, что
C++
1
2
3
do {
...
}while (condition);
реализованные по этим псевдокодам алгоритмы у меня не работали, поэтому я их переделывал и думал, что в методичке ошибки
я нуб...



Цитата Сообщение от ya_noob Посмотреть сообщение
странное явление, тема ожила через 3 года забвения
о точно, я и не заметил )
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.04.2013, 18:59     Псевдокод
Еще ссылки по теме:

C++ Задача о сумме подмножества. Псевдокод в код С++
C++ Что лучше использовать: псевдокод или блок-схемы?
C++ Написать псевдокод к программам
C (СИ) Как писать псевдокод ? Написал програму но не знаю как написать к ней псевдокод кто знает расскажите/покажите

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

Или воспользуйтесь поиском по форуму:
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
03.04.2013, 18:59     Псевдокод #14
Цитата Сообщение от Kastaneda Посмотреть сообщение
repeat
...
until condition
это тоже самое, что
Код C++
1
2
3
do {
...
}while (condition);
нет.
Pascal
1
2
repeat
until (condition)
эквивалентно
C++
1
2
do
while (!(condotion))
: repeat until выполняется, пока условие ложно, do while - пока истинно.
Yandex
Объявления
03.04.2013, 18:59     Псевдокод
Ответ Создать тему
Опции темы

Текущее время: 22:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru