Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Требуется помощь в решении тестов и задач
GAMEINATOR forums > Мир вне игр > Клуб свободных тем
Страницы: 1, 2, 3, 4
FL!NT
http://www-formula.ru/index.php?option=com...&Itemid=173
Формула номер последняя, только выразить длину через высоту.)
RedMagic
Темы соединил.
Vik Winchester
Буду благодарен любому, кто направит на пусть истинный C++ rolleyes.gif

Задача
Перед министерством страны стоит задача: объединить все IP адреса, которые есть в стране, в наименьшую возможную сеть. Для этого работники переписали все IP адреса, которые только были в стране. Однако некоторые адреса были переписаны несколькими людьми, что усложняет вашу задачу.
IP адрес - это 4 числа, которые записаны через точку, в десятичной системе исчисления. Каждая составляющего IP адреса может принимать значение от 0 до 255. Лидирующие нули не допускаются. IP сеть описывается двумя составляющими: адресом сети и её маской. И адрес сети, и маска записывается по тем же правилам, что и IP адрес.
Для того, чтобы понять, что из себя представляет адрес сети и ее маска, необходимо рассмотреть их бинарное представление.
IP сеть содержит 2^n адресов, где (0≤n≤32), при этом маска подсети (в бинарном представлении) содержит 32-n лидирующих единиц и n нулей в конце. Адрес сети (в бинарном представлении) имеет 32-n произвольных бит в своем начале и n нулей в конце. IP сеть содержит все адреса, которые имеют тот же набор из 32-n бит в начале, что и адрес сети, и имеют n произвольных бит в конце.
Говорят, что одна IP сеть меньше другой, если она содержит меньшее количество адресов.

Требуется написать программу, которая находит минимально возможную IP сеть, которая содержит все IP адреса страны.

Формат входных данных: первая строка содержит целое число N - количество IP адресов в списке (1≤n≤1000)
Следующие N строк содержат записи об IP адресах (записи могут повторяться).


Формат выходных данных: В первой строке вывести адрес наименьшей IP сети. Во второй строке вывести маску наименьшей IP сети.

Пример входных и выходных данных:
autistic
ну вот тебе сортировка ип-адресов на си wink_old.gif

Код
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <assert.h>

const int  MAX_ADDRESSES = 1000;

typedef struct _address_table {
    int count;
    char *address[MAX_ADDRESSES];
} address_table_t;

address_table_t g_address_table = {
    6,

    {
        "194.85.177.12",
        "194.84.177.12",
        "194.85.178.12",
        "194.85.177.13",
        "194.88.177.15",
        "194.86.175.15"
    }
};

static int compare_fn(const void *p1, const void *p2) {
    char *s1, *s2;

    s1 = *(char**)p1;
    s2 = *(char**)p2;

    return strcmp(s1, s2);
}

int main(void) {

    int i;

    qsort((void*) &g_address_table.address[0], g_address_table.count, sizeof(char*), compare_fn);

    for (i = 0; i < g_address_table.count; i++) {
        puts(g_address_table.address[i]);
    }

    getchar();

    return(0);
}


на сипипи это делается в три строчки кода, да еще и повторные строчки исключаются, ключевое слово здесь - контейнер.

з.ы. так и не понял что с масками надо сделать.
nuan
refuse а на шарпе .Sort() )))))
abramcumner
Сортировка в этой задаче не нужна. По идее надо перебирать ип, в число преобразовывать и сразу генерить маску и адрес. То есть берется первый ип - устанавливаем адрес сети = ип, маска 255.255.255.255. Берется следующий ип, вычисляем новую маску и адрес
Hulk
Ребят, вопрос по маткаду.
Как сделать решение уравнения в полном в виде? Чтоб не просто Nср = AΣ / (Spx * iПТ) , а вот так Nср = AΣ / (Spx * iПТ) = 4240,9 / (6 * 10-2 * 8) = 8835,2

Уже разобрался, делается через символ explicit
Но теперь возник другой вопрос, как сократить числа после запятой? И именно не ответ, а в самом решении. А то получается жесть какая-то ...=1.6339288495109368*42.39*8=554.1

И да, можно ли как то сбросить все настройки и поставить по умолчанию? А то чтот намутил, а хз что
hee
Может, кто помочь с 1-ым заданием? Все ж мы люди smile.gif
RedMagic
Соеденено с Требуется помощь в решении тестов и задач
abramcumner
Цитата(hee @ 19.12.2013, 21:55) *
Может, кто помочь с 1-ым заданием? Все ж мы люди smile.gif

А какие у тебя возникли проблемы с первым заданием?
a) прибавляешь на каждом шаге коэффициент прироста
б, в) вдобавок к увеличению населения еще меняешь коэффициент прироста на каждом шаге, и на следующем шаге используешь коэффициент, полученный на предыдущем шаге.
hee
abramcumner, привет.
А ты не мог с конкретными данными сделать, ну просто взяв любую страну. Чебы понятней было.Препод, ну просто очень дебильно объяснил, как делать надо. Никто из группы не понял.
abramcumner
Ну, например, Россия:
на 1 января 2011 года население 142 865 433, естественный прирост -0,9(на 1000 населения), данные из вики
2011 взял потому, что за 2012 нулевой прирост - считать неинтересно smile.gif

S0 = 142 865 433 K0 = -0.9 t0 = 2011 h = 1 год
a)коэффициент не меняется, тогда получим
t1 = 2012 -> S1 = S0 + K0 *(S0 / 1000) = 142 865 433 + -0.9 * (142 865 433 / 1000) = 142 736 854
t2 = 2013 -> S2 = S1 + K0 *(S1 / 1000) = 142 736 854 + -0.9 * (142 736 854 / 1000) = 142 608 391
t3 = 2014 -> S3 = S2 + K0 *(S2 / 1000) = 142 608 391 + -0.9 * (142 608 391 / 1000) = 142 480 043
ну и так далее

теперь с учетом, что за 2012 прирост 0, то примем d = 0.9
б) коэффициент прироста увеличивается с d = 0.9
t1 = 2012 -> S1 = S0 + K0 *(S0 / 1000) = 142 865 433 + -0.9 * (142 865 433 / 1000) = 142 736 854
K1 = K0 + d = -0.9 + 0.9 = 0
t2 = 2013 -> S2 = S1 + K1 *(S1 / 1000) = 142 736 854 + 0 * (142 736 854 / 1000) = 142 736 854
K2 = K1 + d = 0 + 0.9 = 0.9
t3 = 2014 -> S3 = S2 + K2 *(S2 / 1000) = 142 736 854 + 0.9 * (142 736 854 / 1000) = 142 865 317
K3 = K2 + d = 0.9 + 0.9 = 1.8
ну и так далее

случай в) делается аналогично б, только d вычитаешь.

Вроде так...
hee
abramcumner, оо, спасибо огромное. Теперь все понятно стало. Ибо препод примеров не приводил :с
Еще раз спасибо smile.gif
CyberR00T
помогите пожалуйста((

CyberR00T
Неужели знающих нет sad.gif
Ким
CyberR00T, ты когда закончишь учёбу?)
CyberR00T
Цитата(Ким @ 14.01.2014, 20:50) *
CyberR00T, ты когда закончишь учёбу?)


Я второй диплом получаю)
abramcumner
первая задача как-то так решается:


третья хорошо даламберится.
autistic
Цитата(abramcumner @ 14.01.2014, 22:44) *
хорошо даламберится.

признак Даламбера сходимости ряда smile.gif
Shenondoah
o_O.gif Попытка решить сломала мой мозг, алгебры всякие мне в школе не давались, по этому в училище я мозги сломал окончательно и стал автостопщиком-проводником z_5.gif
StUnDeR
Ребята, помогите, что-то не врублюсь! Уже мозги плывут, целый день химию учу без перерыва т_Т
"Рассчитайте стандартную энтальпию реакции сгорания ацетилена (C2H2), исходя из стандартных энтальпий образования веществ. Какой объем ацетилена сгорел, если в р-те реакции выделилось 260 кДж теплоты?"
Задача элементарная, а я что-то не врублюсь, почему у меня не получается нужный ответ о_О
таблица стандартных энтальпий сгорания
abramcumner
Цитата(StUnDeR @ 18.01.2014, 22:32) *
Задача элементарная, а я что-то не врублюсь, почему у меня не получается нужный ответ о_О

У меня вышло 0.2 моля. Какой ответ правильный? smile.gif
l3kar
Эээ, что то не соображу. В задании контрольной, в универе:
Цитата
Настройка фильтра в журнале System (Система) для просмотра всех событий за последнюю неделю, связанных с неполадками оборудования.

Настроить для Win Server 2003/
Конкретно не соображу, где указывается именно неполадка оборудования.
comador
l3kar, если еще нужно, то в свойствах журнала, на вкладке Фильтр - "Источник события".
S.a.n.4.e.s.
Нужна помощь с с++, т.к. я в нём практически не разбираюсь. Требуется написать программу: даны a,b,с, требуется узнать длины отрезков ac и bc и их сумму. Написал программу, а она скотина не работает.
CODE
#include <stdlib.h>
#include <stdio.h>

int main()
{
int a, b, c, sum1, sum2, sum3;
printf("vvedi a\n");
scanf("%i",a);
printf("vvedi b\n");
scanf("%i",cool.gif;
printf("vvedi c\n");
scanf("%i",c);
sum1=a+b;
sum2=a+c;
sum3=sum1+sum2;
printf("ab=%i\n",sum1,"bc=%i\n",sum2,"ab+bc=%i\n",sum3);
return 0;
}

причём не хочет работать на строке scanf("%i",a);
abramcumner
я бы вместо scanf("%i",a); написал бы scanf("%d", &a);
А еще длины отрезков по-любому не так считаются smile.gif
Modera
S.a.n.4.e.s., попробуй лучше так:
Код
#include <iostream>

using namespace std;

void main()
{
    float a,b,c;
    cout << "vvedi a" << endl;
    cin >> a;
    cout << "vvedi b" << endl;
    cin >> b;
    cout << "vvedi c" << endl;
    cin >> c;
    cout << "ac=" << c-a << endl;
    cout << "bc=" << c-b << endl;
    cout << "ac+bc=" << c-a+c-b << endl;
    system("pause");
}


Не совсем понял, что тебе нужно, ибо то что в коде у тебя отличается от задачи, сделал как ты говорил.
Цитата
Требуется написать программу: даны a,b,с, требуется узнать длины отрезков ac и bc и их сумму.
S.a.n.4.e.s.
Modera, Спасибо. Просто в сипп я полный 0, да и в геометрии примерно так же. Буду разбираться.
kepka2009
Вот и пришла моя очередь просить помощи, очень нужен человек знающий русский язык минимум на 4, и алгебру тоже минимум на 4, для здачи тестирования. Я сам в русском и математике не бум бум. Очень нужна помощь.
kepka2009
Цитата(kepka2009 @ 21.10.2014, 18:55) *
Вот и пришла моя очередь просить помощи, очень нужен человек знающий русский язык минимум на 4, и алгебру тоже минимум на 4, для здачи тестирования. Я сам в русском и математике не бум бум. Очень нужна помощь.

Печаль sad.gif
ЧАО
kepka2009, а что надо?

Я, правда, русский учил ещё до Фурсенко, когда "кофе" стал средним родом, а "пальто" целым корнем. Да и математику откровенно подзабыл. Но, вдруг, подмогУ?
kepka2009
Цитата(ЧАО @ 23.10.2014, 00:15) *
а что надо?

Я, правда, русский учил ещё до Фурсенко, когда "кофе" стал средним родом, а "пальто" целым корнем. Да и математику откровенно подзабыл. Но, вдруг, подмогУ?

Помочь тестирование сдать.
По твоему сообщению видно, что в русском ты разбираешься куда лучше меня smile.gif
S.a.n.4.e.s.
Требуется помощь в построении эскизов 2 графиков функций:
1 x= t ln t, y= t ln(t+1)
2 r=2R tg f sin f , R>0 (f это фи в данном случае)
Первое х и у по отдельности понятно, просто не пойму как вместе выглядит
Второе вообще не въехал.
Молния в вакууме
Тут запятая пропущена, или что они от меня хотят?

да, запятая пропущена. Пост можно удалить.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.