1. Всем пользователям необходимо проверить работоспособность своего электронного почтового адреса. Для этого на, указанный в вашем профиле электронный адрес, в период с 14 по 18 июня, отправлено письмо. Вам необходимо проверить свою почту, возможно папку "спам". Если там есть письмо от нас, то можете не беспокоиться, в противном случае необходимо либо изменить адрес электронной почты в настройках профиля , либо если у вас электронная почта от компании "Интерсвязь" (@is74.ru) вы им долго не пользовались и хотите им пользоваться, позвоните в СТП по телефону 247-9-555 для активации вашего адреса электронной почты.
    Скрыть объявление

Обсуждение Программирование на C/C++

Тема в разделе "Мастерская", создана пользователем ansis, 13 июн 2006.

  1. ansis

    ansis

    Репутация:
    695
    ansis, 13 июн 2006
    Эта тема предназначена для обсуждения и решение любых проблем, связанных с программированием на языке C/C++, обмена секретами, опытом и помощи в программирование другим пользователям.

    Также рекомендуется ознакомиться со справочной литературой:
    Страуструп Б. - Язык программирования С++. Special Edition.djvu 10.02 Мб
    Шилдт Г. - Самоучитель С++.pdf 2.48 Мб
    [C] Архангельский - программирование в C builder 6.djvu 17.30 Мб

    Ссылки на компиляторы:
    И не забывайте оформлять свой код тегом
    Код:
    [/B][/COLOR]
     
    #1
  2. Antik

    Antik Самец :)

    Репутация:
    28.501.642
    Antik, 30 мар 2007
    Случайно ни у кого не завалялись исходники игры "Дурак"?
    Буду премного благодарен.
     
  3. ansis

    ansis

    Репутация:
    695
    ansis, 4 апр 2007
    Подскажите как реализоапть следующую прогу:

    Используя механизм динамического выделения памяти, а также функции getimage, putimage и bioskey, написать программу, с помощью которой:
    задать с клавиатуры небольшую прямоугольную область на экране дисплея (в процентах от размеров экрана);
    получить на экране любое графическое изображение;
    реализовать возможность передвижения заданной области по экрану дисплея с помощью клавишь-стрелок; существующее изображение при этом должно восстанавливаться.
     
  4. CrazyBolt

    CrazyBolt Ословед

    Репутация:
    1.303
    CrazyBolt, 11 апр 2007
    есть несколько загруженных с помощью LoadBitmap изображений, нужно их вывести в контекст окна в нужных местах... как сделать?
     
  5. gureedo

    gureedo Самец :)

    Репутация:
    42.252
    gureedo, 11 апр 2007
    Создаешь контекст для рисования. Далее создаешь совместмый контекс памяти. туда закидываешь битмап, далее выполняешь копирование BitBlt();
    Вот тебе пример
    laba3.rar 3.38 Кб [56-59]

    upd:
    Выше дебильный способ описал я, он не для такого случая удобен. Вот получше - создай окошко дочернее класса static. и юзай сообщение STM_SETIMAGE
    при создании окна не помню какие параметры надо указать, ну вобщем сказать что статик у тебя для картинки будет. мсдн покури.
     
  6. BeeX

    BeeX Ословед

    Репутация:
    21
    BeeX, 16 апр 2007
    .э.

    Подскажите как с помощью С++ найти процесс?
    Например я хочу узнать запущена ли мирка....
    Спасибо
     
  7. SmK

    SmK

    Репутация:
    310
    SmK, 16 апр 2007
    CreateToolhelp32Snapshot\Process32First\Process32Next
    А вообще для того чтобы узнать запущена ли мирка перечислять процессы слишком... громоздко, да и вообще неправильно(а если exe-шниик мирки будет называться по разному ? =) )
    Самое лучшее по класу окна
    Чтобы узнать класс окна конкретного приложения можно воспользоваться утилитой Spy++ она идёт по дефолту с MS Visual Studio. Или ProcessExplorer скачай какой нить, он вроде тоже показывает...
     
  8. Ner-Zul

    Ner-Zul

    Репутация:
    57
    Ner-Zul, 17 апр 2007
    А как можно решать квадратное уравнение с комплексными числами? :blink:
    И еще пожалуста привидите пример любой проги которая сортирует с помощью спиков, а то у меня в учебнике тока сортировка с помощью массива.:shuffle:
     
  9. CrazyBolt

    CrazyBolt Ословед

    Репутация:
    1.303
    CrazyBolt, 17 апр 2007
    в STL есть класс для работы с комплексными числами, подключаешь #include <complex> и работаешь с ними
    а по поводу списков:
    Код:
    [SIZE=2][COLOR=#0000ff]#include[/COLOR][/SIZE][SIZE=2] [/SIZE][SIZE=2][COLOR=#800000]<iostream>
    [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]#include[/COLOR][/SIZE][SIZE=2] [/SIZE][SIZE=2][COLOR=#800000]<list>
    [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]#include[/COLOR][/SIZE][SIZE=2] [/SIZE][SIZE=2][COLOR=#800000]<algorithm>
    [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]using[/COLOR][/SIZE][SIZE=2] [/SIZE][SIZE=2][COLOR=#0000ff]namespace[/COLOR][/SIZE][SIZE=2] std;
    [/SIZE][SIZE=2][COLOR=#0000ff]int[/COLOR][/SIZE][SIZE=2] main()
    {
    list<[/SIZE][SIZE=2][COLOR=#0000ff]int[/COLOR][/SIZE][SIZE=2]> lst;
    [/SIZE][SIZE=2][COLOR=#0000ff]for[/COLOR][/SIZE][SIZE=2] ([/SIZE][SIZE=2][COLOR=#0000ff]int[/COLOR][/SIZE][SIZE=2] i = 10; i >= 0; --i)
    lst.push_back(i);
    lst.sort();
    list<[/SIZE][SIZE=2][COLOR=#0000ff]int[/COLOR][/SIZE][SIZE=2]>::const_iterator iter;
    [/SIZE][SIZE=2][COLOR=#0000ff]for[/COLOR][/SIZE][SIZE=2] (iter = lst.begin(); iter != lst.end(); ++iter)
    cout << (*iter) << [/SIZE][SIZE=2][COLOR=#800000]" "[/COLOR][/SIZE][SIZE=2];
    [/SIZE][SIZE=2][COLOR=#0000ff]return[/COLOR][/SIZE][SIZE=2] 0;
    }
    [/SIZE]
     
  10. BeeX

    BeeX Ословед

    Репутация:
    21
    BeeX, 17 апр 2007
    спс

    Большое спасибо за информацию
     
  11. HexCode

    HexCode Guest

    Репутация:
    0
    HexCode, 20 апр 2007
    Скажите, пожалуйста, как в Borland C++ Builder поменять цвет фона у заголовка формы?
    А то в свойствах можно менять цвет только клиентской области
     
  12. SmK

    SmK

    Репутация:
    310
    SmK, 20 апр 2007
    А зачем тебе такой изврат ? Стандартными средствами никак.
    Можно конечно самому обратывать WM_NCPAINT и ещё до кучи сообщений, только нафига это надо ?
    Если хочешь нестандартный интерфейс - скачай AlphaControls
    Там можно менять что угодно, даже есть целый набор неплохих скинов, к тому же эти компонеты бесплатны для русских =)
     
  13. BeeX

    BeeX Ословед

    Репутация:
    21
    BeeX, 22 апр 2007
    Вопрос

    Народ, подскажите пожалуйста!
    Как в C Builder 6.0 собрать все файлы которые твоя программа использует в одну папку? А то запускаешь свою прогу на компе где нет Билдера а она ошибку пишет: "Не найден такой-то файл"...
    Это можно как-то настройки поменять или все же самому собирать придется?
    Спасибо.
     
  14. SmK

    SmK

    Репутация:
    310
    SmK, 22 апр 2007
    Project-Options-закладка Packeges- убрать галку с Build with runtime packages
    Project-Options-закладка Linker - убрать галку Use Dinamic RTL
    Почему ? :)
     
  15. na_PaLm

    na_PaLm Ословед

    Репутация:
    287
    na_PaLm, 22 апр 2007
    Ыыы, ну напишите плз, или киньте какой-нить пример, с сохранением в формат GIF (с прозрачностью)
     
  16. Larry_

    Larry_ Ословед

    Репутация:
    1.195
    Larry_, 26 апр 2007
  17. ShaDer

    ShaDer Ословед

    Репутация:
    150.738
    ShaDer, 28 апр 2007
    Делал курсовую и возник такой вопрос. Дано N городов, некоторые из них соединены маршрутами, т.е. дан граф. Как скудными средствами Borland Turbo C 3.1 реализовать поудобнее ввод графа? Надо, естественно, сначала ввести города, потом между какими есть маршруты (вида 1-2, 4-5 и т.д.) и длину этих самых маршрутов.
    Будет всё это представлено в виде матрицы, но вводить такую матрицу сразу - ИМХО, довольно неудобно (например, если есть маршрут между городами 1 и 2 длиной 300 км, то в матрице элемент с индексами 1,2 и 2,1 будет равен 300). Если кто-то предложит хороший вариант ввода, буду рад. Алгоритм решения есть, не знаю только, как ввод реализовать.
     
  18. v0rbis

    v0rbis Ословед

    Репутация:
    515
    v0rbis, 28 апр 2007
    а в файле нельзя хранить сразу структуру матрицы с данными? если они неизменны каэшн
     
  19. Shell

    Shell Ословед

    Репутация:
    15.127
    Shell, 28 апр 2007
    В файле можно писать только длину у существующих дорог
    K - количество дорог
    1 2 300
    4 5 200
    ...
    В программе вводить так:
    Код:
    fscanf(f,"%d",&k);
    while(k-->0)
    {
      fscanf(f,"%d%d%d",&i,&j,&l);
      m[i][j]=l;
      m[j][i]=l;
    }
    
     
  20. ShaDer

    ShaDer Ословед

    Репутация:
    150.738
    ShaDer, 28 апр 2007
    Хм. Ну пожалуй что это самый наглядный и понятный для юзера вариант и есть. Я просто думал, что кто-нибудь что-то хитрое выдумает.
     
  21. Ner-Zul

    Ner-Zul

    Репутация:
    57
    Ner-Zul, 29 апр 2007
    Народ помогите, я че то наверно непонимаю или невижу, :( помогите найти ошибку, прога должна решать квадратное уравнение с комплексными числами:

    Код:
    [SIZE=2][/SIZE]
    #include<stdio.h>
    #include<math.h>
    #include<stdlib.h>
    #include<conio.h>
    struct Komp
     {float a;
      float b;
    };
    struct Komp *x1,*x2;
    double a, b, c, d;
      
    void guckpuMuHaHT()
           { d=b*b - 4*a*c; }
    void roots()
      {guckpuMuHaHT();
       
       if(d==0)
       {x1->a=-b/(2*a);
        x2->a=-b/(2*a);
       }
       if(d>0)
       {x1->a=(-b+sqrt(d))/(2*a);
        x2->a=(-b-sqrt(d))/(2*a);  
       }
       if(d<0)
       {x1->a=(-b/(2*a));
        x2->b=(-sqrt(fabs(d))/(2*a));
       }
    };
    
    void print()
     {
      if (a==0) printf("%lfi", b);
      else
       if (b==0) printf("%lf", a);
       else
        {if(b<0)
          printf("%lf - %lfi", a, fabs(b));
         if(b>0)
          printf("%lf + %lfi", a, b);
        }
     }; 
    int main()
    {
     double a,b,c,x;
     x=(-c)/b;
     Komp k;  
     x1=new Komp;
     x2=new Komp; 
     printf("\nBBeguTe A= ");
     scanf("%lf",&a);
     printf("\nBBeguTe B= ");
     scanf("%lf",&b);
     printf("\nBBeguTe C= ");
     scanf("%lf",&c);
     if(a==0 && b==0 && c!=0)
     {
        printf("%s\n","\n OLLIu6Ka, c=0\n"); 
        system("pause");
        return (0);
     }
     if(a==0 && b==0 && c==0)
     {
          printf("%s\n","\n x=0\n");
          system("pause");
          return (0);
     }
      if(a==0 && b!=0)
     {        
         printf("\n x1: %lf \n",x);; 
     }
     else    
     { 
     printf("\n x1=  ", a, fabs(b));
     printf("\n x2=  ", a, b);
     printf("\n\n");}  
     delete (x1);  
     delete (x2);   
     system("pause");  
     return 0;
    }
    
    [/quote]
     
Загрузка...