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

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

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

    SHLAK New Member

    Joined:
    10 Dec 2007
    Messages:
    12
    Likes Received:
    4
    Reputations:
    0
    Вот хз, вроде все просто, но перетрахал себе мозги с этими двумя последними лабами, че-то не то получается. Единственный язык который блин с горем-пополам знаю так это Дельфи, и то хрен знает как сдал практику.

    Вообщем за мегО спасибо и + помогите решить.

    На C++

    1. Напишите программу, которая по заданному натуральному числу определяет его первую и последнюю цифры. Определение и вывод цифр оформите в виде функции.
    2. Напишите программу с использованием функции Perim. В эту функцию из программы передаются координаты вершин треугольника А(х1, у1), В(х2, у2), С(хЗ, уЗ), а она возвращает периметр треугольника. Если такой треугольник не существует, то выдается соответствующее сообщение.

    1. Вычислите сумму элементов с нечетными номерами.
    2. Преобразуйте массив так, чтобы элементы массива поменялись местами (первый — с последним, второй — с предпоследним и т.д.).
    3. Вычислите сумму элементов, находящихся между первым и последним отрицательными элементами.
    4. Из данного массива и другого массива того же типа, но другой размерности сформируйте общий массив и вычислите сумму положительных элементов, стоящих на нечетных местах.
     
  2. VERte][

    VERte][ Elder - Старейшина

    Joined:
    17 May 2007
    Messages:
    240
    Likes Received:
    163
    Reputations:
    32
    вот что должно быть в ф-ции для первого задания (где 1я и последняя цифры числа k)

    void xek(const int k, int& begin, int& end)
    {
    end=k%10;
    begin=k;
    while (begin/10>9)
    {
    begin=begin/10;
    }
    }

    до вывода надеюсь сам догадаешься)
     
  3. SHLAK

    SHLAK New Member

    Joined:
    10 Dec 2007
    Messages:
    12
    Likes Received:
    4
    Reputations:
    0
    да вывод фигня)
    VERte][ большое спасибо... блин я значит в самом начале тупил) и строчек на 3 больше получалось :D
     
  4. Sinex

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

    Joined:
    17 Aug 2006
    Messages:
    111
    Likes Received:
    24
    Reputations:
    5
    Может с моим поможете,замучался уже, актуально еще неделю. :confused:
     
  5. VERte][

    VERte][ Elder - Старейшина

    Joined:
    17 May 2007
    Messages:
    240
    Likes Received:
    163
    Reputations:
    32
    2 Sinex (1е задание с загоном наибольшего эл-та в левый верхний угол) на вскидку, не компилировал, ф-цию zapolnenie сам допишешь надеюсь...

    Code:
    void zapolnenie(int a[][], int n, int m);
    void perestanovka(int a[][], int n, int m);
    const int m(10),n(10);
    int main()
    {      
       int a[n][m];
       zapolnenie(a);
       perestanovka(a);
    return 0;
    }
    
    void perestanovka(int a[][], int n, int m)
    {
       int max,str(0),stb(0),j(0),i(0),temp;
       max=a[0][0];
       
       for(int i(0); i<n; i++)
        for(int j(0); j<m; j++)
    	 if (a[i][j]>max) 
    	 {
    	   str=i; stb=j; /*нахождение строки и столбца где максимальный элемент*/
    	 }
    	 
    	 if (str!=1)/*перестановка строк 1 и той где макс элемент*/
    	 {
    	  while (j<m)
    	  {
    	    a[1][j]=temp;
    		a[1][j]=a[str][j];
    		a[str][j]=temp;
    	    j++;
    	  }	
         }
    	 
    	 if (stb!=1)/*перестановка столбцов 1 и того где макс элемент*/
    	 { while (i<n)
    	  {
    	    a[i][1]=temp;
    		a[i][1]=a[i][stb];
    		a[i][stb]=temp;
    	    i++;
    	  }
    	 } 
    }
     
    1 person likes this.
  6. Sinex

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

    Joined:
    17 Aug 2006
    Messages:
    111
    Likes Received:
    24
    Reputations:
    5
    Допишу, спасибо большое =)
     
  7. VERte][

    VERte][ Elder - Старейшина

    Joined:
    17 May 2007
    Messages:
    240
    Likes Received:
    163
    Reputations:
    32
    2 Sinex 2е задание про инверсии(zapolnenie тоже сам допиши):

    Code:
    #include<iostream>
    using namespace std;
    void zapolnenie(int a[], int n);
    const int n(10);
    int main()
    {
      int a[n], count(0);
      zapolnenie(a);
      
    for (int i(0);i<n-1;i++)
       for(int j(i+1); j<n; j++)
         if (a[j]<a[i]) count++;
      
    cout<<cout;
    return 0;
    }
     
  8. Shawn1x

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

    Joined:
    24 Aug 2007
    Messages:
    307
    Likes Received:
    538
    Reputations:
    13
    Добрый день!
    Задание: используя алгоритмы и контейнеры Stl:
    создай список из 20 случаных элементов, со значениями от 1 до 19.
    отсортируй список так что бы сначала шли четные элементы
    На С++
     
  9. poza89

    poza89 Banned

    Joined:
    10 Dec 2007
    Messages:
    9
    Likes Received:
    4
    Reputations:
    0
    Народ помогите пожалуйста с моими заданиями...на понедельник нужны позарез, а то...ппц будет мне
     
  10. FK2703

    FK2703 New Member

    Joined:
    15 Oct 2007
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    очень прошу помощи с задачей "Золотая гора" ("Треугольник") на C

    Входной файл input.txt
    Выходной: output.txt

    Идея-подсказка, предложенная мне: "Реализация проста-делай двумерный массив и пускай цикл снизу. Последняя строка совпадает с исходной, а дальше подымайся вверх и выбирай максимум из двух. a[0][0] твой ответ"

    Пример правильного input.txt:
    5
    7
    3 8
    8 1 0
    2 7 4 4
    4 5 2 6 5


    Первое число во входном файле (5) - количество строк в треугольнике. Соответственно, остальные - его заполнение. Надо найти сумму чисел, расположенных на пути, начинающемся в верхней точке треугольника и заканчивающимся на основании.
    Условия:
    1. Каждый шаг на пути может осуществляться вниз по диагонали влево или вниз по диагонали вправо.
    2. Число строк в треугольнике - от 1 до 100
    3. Треугольник составлен из простых чисел от 0 до 99

    Выходные данные.
    В файл output.txt записывается только наибольшая сумма в виде целого числа. Для треугольника из примера правильно работающая прога запишет: "30"

    Если не сдам в понедельник - не допустят до сессии, хотя это - последний оставшийся зачёт(


    кол-во плюсов-благодарностей,какое хотите за реализацию задачи, заявляйте в пм
     
    #130 FK2703, 16 Dec 2007
    Last edited: 16 Dec 2007
  11. poza89

    poza89 Banned

    Joined:
    10 Dec 2007
    Messages:
    9
    Likes Received:
    4
    Reputations:
    0
    может найдутся разберающиеся люди и помогут с лабами??!!!!
    с меня ++ гарантированы
    будьте людьми, помогите. просто без этих лаб меня попрут((( с универа, тем более что разберающимся людям их быстро делать.....
     
  12. ***Dr.Freez***

    ***Dr.Freez*** New Member

    Joined:
    7 Dec 2007
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Помогите в написании задания для курсача асм и тоже самое на паскале
    Дана строка "YoU ArE DeAd!!!" перевести её в вверхний регист, затем в нижний и вывести все три сторки(искодня, верхний регистр, нижний)....
    есть маленькие наработки
     
  13. KEZ

    KEZ Ненасытный школьник

    Joined:
    18 May 2005
    Messages:
    1,604
    Likes Received:
    754
    Reputations:
    397
    День добрый. Нихуево вы наглые стали, студенты. Ещё бы слово "Смирно бля! Всем решать я сказал!" дописал.

    вопрос - а зачем ты в такой институт/колледж/етц пошел?

    ЭЭ..Как помочь? Могу помолиться. Или имеется ввиду так между делом "напишите за меня и дайте готовый код"... ? Ты же привел наработку, зачем тебе помогать?...

    Если бы я сюда скидывал каждый вопрос, на который не могу найти ответ - у меня бы уже постов было тысяч десять. Есть очень хорошая традиция.. Помогать надо осмысленно, т.е. это не значит "писать код за тебя". Тем более, когда чел идет учится в крутой институт, для того, чтоб потом на форуме писать "я полный нуб и ничего не понимаю".
     
    #133 KEZ, 19 Dec 2007
    Last edited: 19 Dec 2007
    3 people like this.
  14. ***Dr.Freez***

    ***Dr.Freez*** New Member

    Joined:
    7 Dec 2007
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Ну и всё...на этом всё дело закончилось....дальше я хз ч0 с этим делать....а паскаль я вообще не знаю, ....а преподу пох....
     
  15. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    тока один вопрос - у меня студия глючит или эта прога действительно вылетает с ошибкой? вроде ничо криминального я там пока не написал, всего-то надо занести в структуру новое значение и попытаться рекурсивно вывести это бинарное дерево.
     
  16. ZweR

    ZweR New Member

    Joined:
    5 May 2007
    Messages:
    23
    Likes Received:
    0
    Reputations:
    0
  17. maxclk

    maxclk New Member

    Joined:
    15 Mar 2007
    Messages:
    9
    Likes Received:
    0
    Reputations:
    0
    Лаба по C++

    "Написать программу, которая создаёт очередь целых чисел вводимых с клавиатуры. Упорядочить эту очередь по возрастанию и вывисти её на экран."

    struct Node
    {
    char data;
    Node* next;
    };
    int main()
    {
    Node *firstPt=NULL;*token=NULL;*prev=NULL;
    cout<<"Введите строку символов"
    char ch, flag=1;
    do
    {
    ch=getche();
    token=new Node;
    token->data=ch;
    token->next=NULL;
    if (flag)
    {
    firstPt=token; flag=0;
    }
    else prev->next=token;
    prev=token;
    }while(ch!='\r');
    cout<<endl;
    cout<<"Очередь:\n";
    token=firstPt;
    while(token)
    {
    cout<<token->data;
    token=token->next;
    }
    cout<<endl;
    getch();
    return 0;

    Это код создания самой очереди, но нет сортировки.
    Немогу отсортировать эту очередь :( помогите плз
     
  18. Neovild

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

    Joined:
    18 Dec 2007
    Messages:
    28
    Likes Received:
    22
    Reputations:
    0
    Сортировка выбором (selection sort).
    Ищешь наимменьший элемент массива, который ставишь на место A[1], ишешь второй наименьший элемент, который ставишь на A[2]... Этот процесс продолжаешь для первых n-1 элементов массива.
    Раборает за O(n*n).
    Code:
    for i:=1 to SIZE-1 do begin
      min:=i;
      for j:=i+1 to SIZE do 
        if a[j] > a [min]
          then min:=j;
        buf:=a[i]; a[i]:=a[min]; a[min]:=buf;
      end;
    Имхо, если брать произвольные числа, то heap-sort самое то- n*lg(n) (Но (!) хоть quick-sort в плохих случаях работает за n*lg(n) . . . . . n*n, тесты показывают, что он быстрее, связано с хз какой записью на винче).
    З.Ы. Почитай Кормана.
     
  19. t3xHuK

    t3xHuK New Member

    Joined:
    22 Aug 2007
    Messages:
    6
    Likes Received:
    1
    Reputations:
    0
    нид хелп

    доброго времени суток )

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

    вот что наваял, компилится но не работает (

    Code:
    TITLE  vuvod_str.
    
    .386
    INCLUDE Study32.inc
    
    WriteString PROTO
    ReadString PROTO
    WriteChar PROTO
    WaitMsg PROTO
    ExitProcess PROTO
    
    .DATA
    	str_in byte 100h dup(?) 
    	str_buff byte 0ffh dup(?)
    	str1 byte "vvedite stroky simvolov ne bolwe 255 slimvolov",0dh,0ah,0
    .CODE
    main PROC
    	mov edx, offset str1
    	call WriteString	;vuvod priglaweni9 vvesti simvolu
    	mov ecx, 0ffh
    	call ReadString 	; edx - ukazivaet na bufer, ecx- razmer bufera -1 (rezerv pod 0), vozvrawaet v eax koli4estvo vvedenux simvolov
    	mov ecx, eax		; deistvitelnoe koli4estvo vvedenux simvolov, 
    	lea ebx, str_in		; zapiwem adres v ebx
    	mov eax,0			; obnulim na vs9kii sly4ai
    	mov edx,0			;edx toje
    	L1:
    		mov al,byte ptr [ebx]+[edx]
    		cmp al, 20h
    		je L2 			;esli probel
    		inc edx			; uveli4im smewenie na 1
    		call WriteChar	;vuvodim simvol
    		cmp ecx,0		; proverim ne dowli li do konca stroki
    		je L3			;esli dowli go out
    		dec ecx			;umenwim koli4estvo ostavwuxs9 cuklov
    		jmp L1			; go na sled simvol
    	L2:
    		call crlf 		;perevod koretki
    		inc edx			; probel toje simvol
    		dec ecx
    		cmp ecx,0		; proverim ne dowli li do konca stroki
    		jnz L1
    	L3:
    	call WaitMsg		; daem vozmojnost s4itat' rezult
    	call ExitProcess	; korektnui vuxod iz progi 
    main ENDP
    END main
    
    на деле при запуске после считывания ничего не выводит, немогу разобратся где ошибся...
    знаю что можно было использовать repe но незнаю как ) было мало практики и примеры на практике были не сложные
     
  20. Shawn1x

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

    Joined:
    24 Aug 2007
    Messages:
    307
    Likes Received:
    538
    Reputations:
    13
    А че это за язык у тя?
     
Thread Status:
Not open for further replies.