Форум программистов, компьютерный форум CyberForum.ru

целый день убил, кое-что накалакял, но это все неправильно. - C++

Восстановить пароль Регистрация
 
trebor
1 / 1 / 0
Регистрация: 05.01.2011
Сообщений: 25
11.05.2011, 21:35     целый день убил, кое-что накалакял, но это все неправильно. #1
написать программу на чистом Си Мерси боку
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2011, 21:35     целый день убил, кое-что накалакял, но это все неправильно.
Посмотрите здесь:

подскажите по самоучителю кое что C++
Не получается кое-что C++
C++ Структура и кое-что не понятно...
Массив и кое-что ещё C++
Проверьте задачку по циклам, неправильно работает. [думаю что неправильно] C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lega4
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 19
11.05.2011, 21:42     целый день убил, кое-что накалакял, но это все неправильно. #2
Как-то нагловато просить всю программу за вас написать... Выложили бы хоть ваши наработки, может и не все неправильно
trebor
1 / 1 / 0
Регистрация: 05.01.2011
Сообщений: 25
11.05.2011, 22:19  [ТС]     целый день убил, кое-что накалакял, но это все неправильно. #3
В моих наработках сам черт ногу сломает, а средней руки профессионал эту задачу за 2 минут накатает, просто серьезно, часов 5 убил на неёпростите за наглость

Добавлено через 13 минут
Господи, пойду утоплюсь, ну хоть подкиньте идею,аааа

Добавлено через 8 минут
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include <stdio.h>
 
 
int main(void) {
    int N,a[1000];
    int i,j,n,k,max, Max;
    /*
    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout);
      */
    scanf("%d",&N);
    for(i=0;i<N;i++)
        scanf("%d",a+i);
    n=1;
    Max=max=0;
    k=1;
 
    for(i=0;i<N;i++)
        if ( (a[i]<a[i+1])&&(n)&&(i!=(N-1) )) {
           printf("da da da da %d\n",i);
            ++k;
            n=0;
        }
        else if ( (a[i]>a[i+1])&&(!n)&&(i!=(N-1) )  ) {
            printf("da da da \n");
            ++k;
            n=1;
        }
            else {
                n=1;
                if(k>max)
                    max=k;
                printf("%d\n",max);
                k=1;
            }
            n=1;k=1;
    for(i=0;i<N;i++)
        if ( (a[i]>a[i+1])&&(n)&&(i!=(N-1) ) ) {
        printf("da da\n");
            ++k;
            n=0;
        }
        else if ( (a[i]<a[i+1])&&(!n)&&(i!=(N-1) ) ) {
               printf("da \n");
            ++k;
            n=1;
        }
            else {
                n=1;
                if(k>Max)
                    Max=k;
                    printf("%d\n",Max);
                k=1;
            }
    if(Max>max)
        printf("%d\n",Max);
    else printf("%d\n",max);
    return 0;
    }
мой быдло-код, если кто не верит, что я 5 часов убил

Добавлено через 9 минут
Эх, я бы даже за денежку попросил бы, но это все так долго...
eXXXXXXXXXXX
30 / 30 / 3
Регистрация: 24.02.2011
Сообщений: 126
12.05.2011, 00:08     целый день убил, кое-что накалакял, но это все неправильно. #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <fstream>
using namespace std;
ifstream in("INPUT.txt");
ofstream out("OUTPUT.txt");
int check(int prev,int cur)
{
    static int st;
    static int l=1;
    if (l==1)
    {
        if (prev<cur)
        {
            st=1;
            l=2;
            return l;
        }
        if (prev>cur)
        {
            st=-1;
            l=2;
            return l;
        }
        if (prev==cur)
        {
            int a=l;
            l=1;
            return a;
        }
 
    }
    else
    {
        if (prev>cur)
        {
                if (st==1)
                {
                    st=-1;
                    l++;
                }
                else
                {
                    st=-1;
                    int a=l;
                    l=2;
                    return a;
                }
        }
        if (prev<cur)
        {
            if (st==-1)
            {
                st=1;
                l++;
            }
            else
            {
                st=1;
                int a=l;
                l=2;
                return a;
            }
        }
        if (prev==cur)
        {
            int a=l;
            l=1;
            return a;
        }
    }
    return l;
 
}
int main()
{
    int max=1,cur,next;
    int N;
    in>>N;
    in>>next;
    for (int i=1;i<N;i++)
    {
        cur=next;
        in>>next;   
        int tmp=check(cur,next);
        if (tmp>max)
            max=tmp;
    }
    out<<max;
    return 0;
}
только как-то некрасиво
Yandex
Объявления
12.05.2011, 00:08     целый день убил, кое-что накалакял, но это все неправильно.
Ответ Создать тему
Опции темы

Текущее время: 21:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru