Студентам с лабораторными сюда (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by _Great_, 20 Jun 2007.

Thread Status:
Not open for further replies.
  1. AliseinWOnde

    AliseinWOnde New Member

    Joined:
    7 Nov 2012
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    не могу никак разобратьс с классами, помогите пожааалуйста, а то никак не успеваю...

    помооогите!!!!!
    описать класс "circle" окружность, содержащий данные о координатах центра окружности, ее радиусе и цвете. Предусмотреть компонентные функции каждого данного по отдельности, рисования, стирания/, переноса окружности, изменения ее радиуса и цвета. Вышеуказанный класс в качестве поля должен содержать объект класса точка, который вы также должны разработать.
    !!!рисовать ничего не надо, просто в памяти компа должны храниться все эти данные! :) :)
     
  2. Белый Ворон

    Joined:
    7 Oct 2012
    Messages:
    46
    Likes Received:
    3
    Reputations:
    0
    [C#] Задачка

    есть такой код:
    Code:
    using System;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                Class2 o = new Class2();
                Console.Read();
            }
        }
    
        class Class1
        {
            public Class1()
            {
                Console.WriteLine("Hello from Class1");
            }
        }
    
        class Class2 
        {
            Class1 c = new Class1();
     
            public Class2()
            {
                Console.WriteLine("Hello from Class2");
            }
        }
    }
    этот код выводит на консоль
    Hello from Class1
    Hello from Class2
    необходимо вставить между этими 2 строками вывод слова "привет", не модифицируя ни метод Main, ни код внутри классов.
     
  3. seosimf

    seosimf Member

    Joined:
    3 Mar 2011
    Messages:
    271
    Likes Received:
    44
    Reputations:
    6
    Подсовывать свою mscorlib.dll либо хукать вызов Console.WriteLine, по другому никак без модификации кода. Или в другой наймспейс Class1 и Class2.
     
    #4143 seosimf, 15 Nov 2012
    Last edited: 15 Nov 2012
    1 person likes this.
  4. progress05

    progress05 New Member

    Joined:
    28 Jun 2011
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Помогите доделать программу программу в Dephi 7 ...
    Суть программы .. она должна выдавать список всех запущенных exe процессов с возможностью просмотра свойств ехе файла .. таких как: ('CompanyName','FileDescription','FileVersion','LegalTrademarks','ProductName','ProductVersion','Comments');

    Вот Ссылка на исходник проги которая извлекает список всех запущенных процессов .. а вот как извлеч свойсва ехе файлов разобраться немогу .. нашёл только это http://forum.developing.ru/showthread.php/4128-%D0%A1%D0%B2%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B0-EXE .. но увы дальше не хватает мне серого вещества..
     
  5. patcher

    patcher Banned

    Joined:
    15 Dec 2009
    Messages:
    190
    Likes Received:
    37
    Reputations:
    10
    progress05, читай данные либо из заголовка DOS либо из манифеста
     
  6. Белый Ворон

    Joined:
    7 Oct 2012
    Messages:
    46
    Likes Received:
    3
    Reputations:
    0
    одно из решений seosimf уже озвучил. правда код не выложил.
    будут еще варианты?
     
  7. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    Code:
    using System;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                Class2 o = new Class2();
                Console.Read();
            }
        }
    
        class Class1
        {
            public Class1()
            {
                Console.WriteLine("Hello from Class1");
            }
        }
    
        class Class2 : Trololo
        {
            Class1 c = new Class1();
    
            public Class2()
            {
                Console.WriteLine("Hello from Class2");
            }
        }
    
        class Trololo
        {
            public Trololo()
            {
                Console.WriteLine("привет");
            }
        }
    }
     
    1 person likes this.
  8. Белый Ворон

    Joined:
    7 Oct 2012
    Messages:
    46
    Likes Received:
    3
    Reputations:
    0
  9. seosimf

    seosimf Member

    Joined:
    3 Mar 2011
    Messages:
    271
    Likes Received:
    44
    Reputations:
    6
    Зачем выкладывать код на Hello World? Эта задача из подобных - никакой практической ценности не несет, явно выбранное задания из теста при приеме на работу.
     
  10. GRRRL Power

    GRRRL Power Elder - Старейшина

    Joined:
    13 Jul 2010
    Messages:
    823
    Likes Received:
    185
    Reputations:
    84
    Тебе помогут функции из этой серии. Собственно, в топике по ссылке, которую ты привел, последний пост говорит о том же.
     
  11. khvdaiver

    khvdaiver New Member

    Joined:
    29 Oct 2012
    Messages:
    79
    Likes Received:
    2
    Reputations:
    0
    Белый Ворон,
    думаю, что возможно это можно сделать с помощью делегатов. почитай про них, но я могу ошибаться =)
     
  12. Spot

    Spot Elder - Старейшина

    Joined:
    1 Mar 2007
    Messages:
    461
    Likes Received:
    38
    Reputations:
    1
    Мне кажется это несколько был "стёб" с его стороны и он прикрасно разбирается, что есть делегаты. Так что совет "несколько" излишен.
     
  13. [Exclusive]

    [Exclusive] Member

    Joined:
    3 Jun 2011
    Messages:
    37
    Likes Received:
    5
    Reputations:
    0
    Вопрос решен.
    Delete
     
    #4153 [Exclusive], 18 Nov 2012
    Last edited: 29 Nov 2012
  14. progress05

    progress05 New Member

    Joined:
    28 Jun 2011
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Ребята.. а если честно не понял ничего с того что прочел .. из темы по совету pachrer ... может кто-то может реально по делу что-то предложить ?? ... мой пост выше...
     
  15. Lolli

    Lolli New Member

    Joined:
    18 Nov 2012
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Программа на C

    Нужна помощь на С:

    В одномерном массиве, состоящем из n вещественных элементов, вычислить:
    1) номер максимального по модулю элемента массива;
    2) сумму элементов массива, расположенных после первого положительного элемента.
    Преобразовать массив таким образом, чтобы сначала распологались все элементы, целая часть кторых лежит в интервале [a,b], а потом - все остальные (метод "пузырька"). Функция, вычисляющая модуль fabs(), находиться в файле <math.h>. Целую часть числа определять с помошью операции преобразования типов int(число).
     
    #4155 Lolli, 20 Nov 2012
    Last edited: 20 Nov 2012
  16. becensed

    becensed Member

    Joined:
    2 Dec 2009
    Messages:
    84
    Likes Received:
    24
    Reputations:
    1
    Как-то так, за правильность не ручаюсь. Если что - поправь сам.
    Code:
    #include <stdio.h>
    #include <math.h>
    
    #define N 10
    
    void main()
    {
        float t=0, sum=0, maxi =0, mas[N] = {1.4, 1, -2, -1.32, 11, 5.8, -9, 49.9, 11, 32};
        int i,j,a,b;
    
        printf("Имеем массив чисел: ");
        for (i=0; i<N; i++) printf("%0.2f ", mas[i]);
    
    /////////////////////////////////////////////////////////
    /* 1) номер максимального по модулю элемента массива; */
    ///////////////////////////////////////////////////////
        for(i=0; i<N; i++)
        {
            if(fabs(mas[i]) > maxi)
            { 
                maxi = fabs(mas[i]);
                j = i;
            }
        }
        printf("\nНомер максимального по модулю элемента (%0.2f): %d\n", maxi, j);
    
    ////////////////////////////////////////////////////////////////////////////////////
    /* сумма элементов массива, расположенных после первого положительного элемента. */
    //////////////////////////////////////////////////////////////////////////////////
        i = 0;
        while(i<N)
        {
            if (mas[i] > 0)
                break;
            else i++;
        }
    
        for (i++; i<N; i++)
            sum += mas[i];
    
        printf("Сумма элементов массива после первого положительного: %0.2f\n\n", sum);
    
    ///////////////////////////
    /* Преобразовать массив */
    /////////////////////////
        printf("ведите a,b: ");
        scanf("%d,%d", &a, &b);
    
        for (i=j=0; i<N; i++)
            if ((int)mas[i] >= a && (int)mas[i] <=b )
            {
                if(i > j)
                {
                    t = mas[i];
                    mas[i] = mas[j];
                    mas[j] = t;
                }
                j++;
            }
    
        printf("Преобразованный массив: ");
        for (i=0; i<N; i++) printf("%0.2f ", mas[i]);
    }
    
     
    #4156 becensed, 21 Nov 2012
    Last edited: 21 Nov 2012
  17. Lolli

    Lolli New Member

    Joined:
    18 Nov 2012
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Спасибо. А если то же самое на C++?
     
  18. RоACh

    RоACh New Member

    Joined:
    30 Oct 2011
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Всем привет) Как ни странно, но вопрос по самому заданию, а не по решению. Я нихера не понял, что нужно сделать, может, кто-то шарит в этом? Особенно интересует про коэффициенты, что это такое вообще и зачем.
    Язык C#, задание:

    Разработать приложение обеспечивающее формирование водяного цифрового знака на изображении. Цифровой водяной знак формируется путем изменения в пикселе по маске одного из каналов на заданный коэффициент. Формат исходного изображения .bmp, не сжатый, по 4 байта на канал. Исходный файл изображения студент выбирает сам, минимальный размер 500х500 пикселей, максимальный 1000х1000. Маска имеет формат 50х50 пикселей, все линии маски имеют линии толщиной в три пикселя. Маска накладывается на правый нижний угол изображения. Варианты маски представлены в дополнительных материалах.

    В задании есть несколько bmp файлов с какими-то фигурами, не понимаю, их надо юзать или свой такой-же возвести? Заранее спасибо) Задание придумывал какой-то другой препод, которого найти крайне трудно.
     
  19. muznast

    muznast New Member

    Joined:
    10 Nov 2012
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Нужна помощь с лабами на C#.
    лабы 1 курса, сложного нет ничего (просто я ноль)
    Мне необходыми готовые сорцы, что бы показать преподу.
    http://rghost.ru/41672999
    icq 1215008
     
  20. ALEX1945

    ALEX1945 New Member

    Joined:
    10 May 2012
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Программа содержит два объекта, каждый из которых представлен окном и содержит свой поток. Эти объекты связаны друг с другом. В каждом окне движется синий шар, отскакивая от границ окна. Поток каждого окна перемещает шар в своём окне и сообщает другому окну об отскакивании шара от границ окна. При этом шар другого окна с синего цвета перекрашивается в красный и наоборот.

    Code:
    using System;
    using System.Drawing;
    using System.Threading;
    using System.Windows.Forms;
    delegate void Del(int x, int y);
    class Ball
    {
    public event Del ev;
    Thread t;
    Thread z;
    bool life;
    int w, h;
    int x = 10, y = 15;
    int dx = 5;
    int dy = 5;
    int x1;
    int y1;
    Random r;
    Color c;
    public Color Color
    {
    get { return c; }
    }
    public Ball(int W, int H)
    {
    w = W;
    h = H;
    r = new Random();
    x = r.Next(10, w - 5);
    y = r.Next(20, h - 10);
    c = Color.Blue;
    life = true;
    t = new Thread(new ThreadStart(Move));
    t.Start();
    t = new Thread(new ThreadStart(Moving));
    z.Start();
    }
    
    private void Move()
    {
    while (life == true)
    {
    x += dx;
    y += dy;
    if (x < 0 || x > w) { dx = -dx; }
    if (y > h || y < 0) { dy = -dy; }
    if (ev != null) { ev(x, y); }
    Thread.Sleep(50);
    }
    }
    private void Moving()
    {
    while (life == true)
    {
    x += dx;
    y += dy;
    if (x < 0 || x > w) { dx = -dx; }
    if (y > h || y < 0) { dy = -dy; }
    if (ev != null) { ev(x, y); }
    Thread.Sleep(100);
    
    }
    }
    public void BallHandler(int X, int Y)
    {
    x1 = X;
    y1 = Y;
    
    }
    }
    class Wind : Form
    {
    public Ball b;
    public Ball b2;
    int x, y;
    public Wind()
    {
    this.Text = "Wind";
    this.Visible = true;
    Size = new Size(140, 130);
    b = new Ball(this.ClientSize.Width, this.ClientSize.Height);
    b2= new Ball(this.ClientSize.Width, this.ClientSize.Height);
    b.ev += new Del(Hand);
    b2.ev += new Del(Hand);
    }
    public void Hand(int X, int Y)
    {
    x = X;
    y = Y;
    Invalidate();
    }
    
    protected override void OnPaint(PaintEventArgs e)
    {
    base.OnPaint(e);
    e.Graphics.DrawEllipse(new Pen(b.Color, 2), x,y,20, 20);
    }
    }
    class Near
    {
    static void Main()
    {
    Wind w1 = new Wind();
    Wind w2 = new Wind();
    w1.b.ev += new Del(w2.b.BallHandler);
    w2.b.ev += new Del(w1.b.BallHandler);
    Application.Run(w1);
    
    }
    }
    смотрите создал новый объект и новый поток,сделал для этого объекта как бы движение.но всё равно шары двигаются одинаково.то есть для каждого шара нужен свой поток.Помогите пожайлуста
     
    #4160 ALEX1945, 22 Nov 2012
    Last edited: 22 Nov 2012
Thread Status:
Not open for further replies.