Ciąg bitoniczny - jak zapisać rozwiązanie w pseudokodzie?

2014-12-18 22:38
0

Jak zapisac rozwiązanie tego w pseudokodzie:

Ciąg liczbowy x1, . . . , xn nazywamy bitonicznym wtedy i tyko wtedy, gdy istnieje
m: 1 < m < n takie, że: x1 < x2 < . . . < xm > xm+1 . . . > xn.

Np. ciąg:
1 3 4 5 2 1 jest ciągiem bionicznym
Zaś ciąg 1 3 4 5 2 3 1 nie

Wejście

W pierwszym wierszu znajduję się liczba ciągów do zbadania. Jest ona nie większa od 100.

W kolejnych wierszach znajduje się: jako pierwsza liczba dodatnia n nie większa od 10000 oznaczająca ilość elementów kolejnego ciągu. Następnie podane jest n liczb całkowitych nie większych co do wartości bezwzględnej od miliona. Są to kolejne elementy ciągu. Wszystkie liczby są rozdzielone pojedyńczą spacją

Wyjście

W kolejnych n wierszch wypisz napis TAK jeśli ciąg jest bitoniczny, bądź słowo NIE jeśli ciąg nie jest bitoniczny

edytowany 1x, ostatnio: misio23, 2014-12-18 22:38

Pozostało 580 znaków

2014-12-18 22:40
0
  1. Zapisać w postaci kodu.
  2. Przepisać na pseudokod.

Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

2014-12-18 22:44
0

nie rozumiem

edytowany 1x, ostatnio: furious programming, 2014-12-18 23:20
Po prostu nikt Ci nie pomoże jeśli najpierw sam nie spróbujesz podać swojego rozwiązania. Za gotowce się płaci albo czasem albo cashem ;) - EroSanin 2014-12-19 08:40

Pozostało 580 znaków

2014-12-18 22:47
0
  1. bierzesz pierwszy element
  2. bierzesz kolejny element dopóki jest większy od poprzedniego
  3. bierzesz kolejny element dopóki jest mniejszy od poprzedniego
  4. jeśli dochodzisz do ostatniego elementu to jest a jak nie to nie jest

Chcesz pomocy - pokaż kod - abrakadabra źle działa z techniką.

Pozostało 580 znaków

2014-12-19 16:55
0

Witam, mam również problem z ciągiem bitonicznym, lecz coś w nim nie działa, mógłby ktoś sprawdzić co jest nie tak ?
Byłbym bardzo wdzięczny

 #include <iostream>
using namespace std;

int main() {
    int n,x=0;
    cin >> n;
    int t[n];
    for (int i = 0; i < n; i++)
        cin >> t[i];
    for (int i = 0; i < n; i++)
        if(t[i+1]>t[i])
            x++;

    bool ciag = true;
    for (int i = x; i < n; i++)

        ciag = ciag && (t[i] < t[i-1]);

    if (ciag)
        cout << "TAK" << endl;
    else
        cout << "NIE" << endl;
}

Pozostało 580 znaków

2014-12-19 17:11
0
 #include <iostream>
using namespace std;

int main() {
    int n,x=0;
    cin >> n;
    int t[n];

Nie możesz tak deklarować tablicy, już Ci na innym forum odpowiedzieli. Musisz to zrobić dynamicznie.


"There are people who actually like programming. I don't understand why they like programming."
Rasmus Lerdorf

Pozostało 580 znaków

2014-12-19 17:52
0

Zadeklarowanie dynamicznej tablicy nic mi nie dało co więcej program stał się niestabilny,
być może to zrobiłem, wzorowałem się na tym : http://www.p-programowanie.pl/cpp/tablice-dynamiczne/

Pozostało 580 znaków

2014-12-19 18:05
0
#include <iostream>
using namespace std;

int main()
  {
   unsigned i,n,v,p=0;
   cin>>n>>p;
   for(i=1;(i<n)&&(cin>>v)&&(p<=v);++i) p=v;
   for(;(i<n)&&(p>=v)&&(cin>>v);++i) p=v;
   cout<<(i<n?"NIE":"TAK")<<endl;
   return 0;
  }

Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

2014-12-19 18:27
0

Program który podałeś, jest mega skrócony, ale i tak nie działa tak jak powinien, kiedy ciąg jest stały np 5,5,5 , dostajemy odpowiedz TAK zamiast NIE . Najbardziej zależy mi na tym, żeby ktoś powiedział mi dla jakich liczb mój program nie spełnia założeń ciągu, .

Tak czy inaczej i tak dziękuje za odpowiedz !

to zamień sobie &lt;= na &lt; i &gt;= na &gt; - Sopelek 2014-12-19 18:31
http://ideone.com/fOt01p , powinno wypisać NIE , ponieważ nie jest to ciąg - Fabix 2014-12-19 21:44

Pozostało 580 znaków

2014-12-19 19:44
0

@_13th_Dragon - co powinien wyświetlić program dla
3
5 6 5

edytowany 1x, ostatnio: furious programming, 2014-12-19 20:26

Pozostało 580 znaków

2014-12-19 20:03
0

powinien wypisać TAK moim zdaniem .

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0