Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Помогите с задачками по С++ (https://forum.antichat.xyz/showthread.php?t=28964)

Anium 12.12.2006 15:45

Помогите с задачками по С++
 
Помогите с задачками по С++, неуспеваю... желательно в Builder'е

1. Написать программу которая выводит самое длинное и самое короткое слово во

введённом предложении

2.Написать рекурсивную функцию которая заполняет массив целых чисел значениями,

вводимых пользователем в обратном порядке

3.Написать функцию для решения системы N уравнений

4. Написать класс для решения системы N уравнений

5. DLL. Вычислить значение функции y=0.5x^2 + 4x - 3 и постройте график этой функции в Exel

KoTeG 12.12.2006 16:29

Я думаю что такие задачки только за деньги ( написать программы , функции , класс )

bopoh13 12.12.2006 16:56

Мля, что тут писать...

Смысл алгоритмов:

1. Вводишь предложение. Создаешь динамический массив. Заполняешь массив словами (в качестве разделителя используешь "пробел"). Анализируешь длинну каждой переменной массива через цикл, записывая в переменные $ds (самое длинное) и $ks (самое короткое), например.

2. Заполняешь массив. Перезаписываешь значения в обратном порядке. (Возможно, есть готовая функция при работе с массивом).

3. Надо вспомнить математику за 7-8 класс... Вообщем-то можно подбором (и выбирая диапазон чисел)

4-5. С DLL и классами посложнее. Как писать незнаю, т.к на СИ не пишу!

Но задания легкие...

Anium 12.12.2006 16:56

есть немного wmz, стучите в аську 512-543, договоримся

VampiRUS 12.12.2006 17:07

Цитата:

1. Вводишь предложение. Создаешь динамический массив. Заполняешь массив словами (в качестве разделителя используешь "пробел"). Анализируешь длинну каждой переменной массива через цикл, записывая в переменные $ds (самое длинное) и $ks (самое короткое), например.
это ты наверное на php легко это напишешь, а в C будет посложнее, если будет время напишу только не на билдере.
Цитата:

3.Написать функцию для решения системы N уравнений
полюбому кто-то уже писал до тебя use google.

bopoh13 12.12.2006 17:14

Цитата:

Сообщение от VampiRUS
это ты на php легко это напишешь

Ну дык ;) И на Delphi тоже.
А в СИшке в чем трудность будет?

Anium 12.12.2006 17:24

вот я для первой лабы набросал немного, но никак не получу ответ в таком виде:
-----------------------------------
самое длинное слово: ...
самое коротко слово: ...

Код:


#include <iostream.h>
#include <stdio.h>
#include <vcl.h>
void main (int arg_cou, char** arg_cnt)
{
char str [200], *cp, *lng;
int i, maxlen, curlen;
char c;

// вводим слова
for (i=0; i < (sizeof(str)-2); i++)
{ c = getchar();
  if (c == '\n') break;
  str[i] = c;
}
str [i] = ' ';
str [i+1] = 0x00;

cp = lng = str;
maxlen = 0;
for (i=0; str[i]; i++)
{ if (str[i] == ' ') // слово кончилось
  { if (*cp == ' ')  // пробросить группу пробелов
      { cp = str+i; continue; }
    curlen = (str+i) - cp;
    if (curlen > maxlen)  // это слово длиннее ?
      { maxlen = curlen; lng = cp; }
    str[i] = 0x00;
    printf("<%s> %2d %2d\n", cp, curlen, maxlen); // отладка
    cp = str + i + 1;
  }
  else // не кончилось
  { if (*cp == ' ') cp = str + i;
  }
}

printf("самое длинное слово <%s>\n", lng);
getchar();
}


VampiRUS 12.12.2006 17:28

Цитата:

Ну дык И на Delphi тоже.
А в СИшке в чем трудность будет?
посмотри листиг который привёл Anium, а сколько бы это заняло на php?

NaX[no]rT 12.12.2006 17:44

Anium по-моему сильно загнул (: намного меньшим кодом обойтись можно используя строки
Код:

#include <iostream.h>
#include <string>

int main()
{
        string buf, largest,shortest;

            int maxLen,minLen,curLen,
            max = -1, min=100,
            cnt = 0;
               
        while ( cin >> buf )
        {
                curLen = buf.size();
                if ( curLen > max )
                {
              max = curLen;
              largest = buf;
                }
                if ( curLen < min )
                {
              min = curLen;
              shortest = buf;
                }
        }

        cout << "The largest word:  " << largest << endl;
        cout << "The shortest word:  " << shortest << endl;
   
}


bopoh13 12.12.2006 17:48

2 VampiRUS: может еще короче можно... :p

2 Anium: _http://www.forum.ishodniki.ru/index.php?action=;topic=5992.0;prev_next=prev
ЗЫ: а ты тему развивай, глядишь, седня фсе доделаешь :)


Время: 23:40