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

Пишем свой интерпретатор языка BASIC - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Меню и список http://www.cyberforum.ru/cpp-beginners/thread41194.html
Здравствуйте форумчане. Помоги пожалуйста в следующем вопросе: У меня есть 2связный список, написано меню. Но в моменте когда написано make a list и delete custom необходимо чтобы выводились: Введите элемент и номер. вот сам код: #ifndef __list_h #define __list_h #include <iostream>
C++ Здравствуйте! Не могу поместить class в один файл с программой. file.hpp #include "Cat.hpp" // здесь классы "2)" Cat::Cat(int initialAge) { itsAge = initialAge; } Cat::~Cat() { http://www.cyberforum.ru/cpp-beginners/thread41186.html
Массивы строк C++
Привет всем! Задан массив строк. Как узнать который символ встечаетса найбольшое количество раз в етом массиве?
C++ вывод на экран набор треугольников и квадратов, которые произвольно двигаются и меняют размер
Please, help me!!! Вот текст программы, которая выводит на экран набор треугольников и квадратов, которые произвольно двигаются и меняют размер только квадратов. Проблема в том, что необходимо исправить код, чтоб фигуры не исчезали за экран (т.е. 640х460) и были компактным набором, т.е. двигались неменяя своего положения относительно друг друга и стукаясь об стенку экрана меняли свое...
C++ Округление дробного числа до целого в большую сторону. http://www.cyberforum.ru/cpp-beginners/thread41139.html
Доброго дня. Я новичок в программирование на Visual C++. Проблема такая программа должна считать кол-во месяцев, если числа целые то программа шла дальше, если дробное то (например 3.33333) программа не округляет это число (в большую сторону) до 4. Перелопатил тонны литературы, но пропустил или не нашёл этого, большая просьба написать функцию которая могла бы это делать, или способ какой.
C++ Код из Delphi в C++ Нужно написать курсовую на C++. Сам я в программировании плохо шарю (не программист). Попросил у народу помощи, помогли. Но решение на Delphi: {$APPTYPE CONSOLE} type byteset=set of byte; var d:array of longint; procedure c; var a,b,i:longint; подробнее

Показать сообщение отдельно
#pragma
Временно недоступен
952 / 223 / 6
Регистрация: 12.04.2009
Сообщений: 921
25.10.2009, 20:00  [ТС]     Пишем свой интерпретатор языка BASIC
Сделал инструкцию SCREEN(ревизия 42),пока только в одном варианте,так как там куча всяких режимов,я даже не знаю,получится ли все их сделать,библиотеки разные,выбрал наиболее подходящий.(640 на 480,глубина цвета 16 бит,страница создаётся в системной памяти)
В-общем,если интересно попробовать(в принципе там ничего пока не увидишь,только чёрный экран с курсором),то тогда нужно указать режим возврата(то есть твой режим видео) а то экран так и останется в 640Х480,а мне даже понравилось,некоторые старые игрушки,Homm 3 например,не растягиваются у меня на полный экран,так как у меня widescreen,а это способ,возможно,насильно растянуть картинку как хочешь.
Менять нужно в файле graphics.h вот эти два enum'a
C++
1
2
3
4
5
6
7
8
9
10
11
  enum ScreenModeW { // Screen width
     x640  = 640,
     x800  = 800,
     x1400 = 1400
  };
/* -------------------------------------------------------------------------- */
  enum ScreenModeH { // Screen height
     x480 = 480,
     x600 = 600,
     x900 = 900
  };
и функцию
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
  template <class T> void graphics_SetSCREEN (T params)
  {
     switch (params->at(0)->Get_ival())
     {
        case 12: // SCREEN 12
           if (!graphics.isinit())
              if (SDL_Init( SDL_INIT_VIDEO ) < 0)
                 error(CANNOT_INIT_VIDEO_SUBSYS);
           Gr_Surface_t *display;
           if (SDL_VideoModeOK(ScreenModeW(x640),ScreenModeH(x480),
                                               BitDepth(_16bit),SDL_SWSURFACE|
                                                                SDL_FULLSCREEN))
              display = SDL_SetVideoMode (ScreenModeW(x640),ScreenModeH(x480),
                                               BitDepth(_16bit),SDL_SWSURFACE|
                                                                SDL_FULLSCREEN);
 
           else error(CANNOT_SET_DISPLAY);
           // TODO Just for test,need to be removed later
           sleep(2);
           if (SDL_VideoModeOK(ScreenModeW(x1400),ScreenModeH(x900),
                                               BitDepth(_32bit),SDL_SWSURFACE|
                                                                SDL_FULLSCREEN))
              display = SDL_SetVideoMode (ScreenModeW(x1400),ScreenModeH(x900),
                                               BitDepth(_32bit),SDL_SWSURFACE|
                                                                SDL_FULLSCREEN);
           //////////////////////////////////////////////
           assert (display);
           graphics.set_last_display(display);
        break;
        default: error(UNKNOWN_VIDEO_MODE);
     }
  }
Как раз после // TODO,просто прописать новые значения из перечислений.
И ксатати,если не нужно полный экран,то просто убрать " | SDL_FULLSCREEN"
Насчёт линий и прочего я не нашёл специальных функций,но зато обнаружил пример рисования пикселя на экране.Причём функцию нужно писать самому.Но главное нарисовать точку,а там уже "да здравствует математика".
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru