• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pomoc(Funkcje)

VPS Starter Arubacloud
+1 głos
228 wizyt
pytanie zadane 4 kwietnia 2015 w C i C++ przez Iras Obywatel (1,800 p.)
#include <iostream>

using namespace std;

int add(int t[],int size)
{
    int s=0;
    for (int i=0;i<size;++i)
    {
        s+=t[i];
    }
    return s;
}

int maxElem(const int t[],int size)
{
    int ma=t[0];
    for (int i=0;i<size;++i)
    {
        if(t[i]>ma)
            ma=t[i];
    }

    return ma;
}
int minElem(const int t[],int size)
{
    int mi=t[0];
    for (int i=0;i<size;++i)
    {
        if(t[i]<mi)
            mi=t[i];
    }

    return mi;
}
int IndMax(const int t[],int size)
    {
        int indmax=0;
    for (int i=0;i<size;++i)
       {

        if(t[i]>indmax)
            indmax=i;
       }
        return indmax;
    }


int IndMin(const int t[],int size)
    {
        int indmin=0;
for (int i=0;i<size;++i)
{
    if(t[i]<indmin)
            indmin=i;
    }
     return indmin;
    }

bool contains(const int t[],int size,int what)
{

 for (int i=0;i<size;++i)
{

        if(t[i]==what)
           {
              return true;
           }
        else
        {
            return false;
        }
}
return true;
}





int main()
{
    int what;
    int arr[]={1,2,3,4,5};
    int suma = add(arr,5);
    cout<<suma<<endl;
    cout<<maxElem(arr,5)<<endl;
    cout<<minElem(arr,5)<<endl;
    cout<<IndMax(arr,5)<<endl;
    cout<<IndMin(arr,5)<<endl;
    cout<<contains(arr,5,what)<<endl;

    return 0;
}

 

 

Cześć, potrzebuje pomocy mianowicie robiłem na zajęciach funkcję i nie mogę wywyołać funkcji contains co jest nie tak w tej funkcji 

5 odpowiedzi

+4 głosów
odpowiedź 4 kwietnia 2015 przez krecik1334 Maniak (58,390 p.)
Zmienna what nie ma wartości a musi mieć. Wczytaj ją np. cinem lub przypisz coś do niej.
+1 głos
odpowiedź 4 kwietnia 2015 przez Buby Pasjonat (19,590 p.)

Jak nie możesz jej wywołać? U mnie kod się normalnie kompiluje i zwraca wartość false...

 

@Up:

Ale tak czy siak, jeśli on przypisze jej wartość, to funkcja zwróci true tylko dla what=1.

Usuń tego else z fora, jeśli chcesz, żeby funkcja zwróciła prawdę tylko dla jednego argumentu, a za pętlą ma zwracać false. :)

komentarz 4 kwietnia 2015 przez Iras Obywatel (1,800 p.)
dobra pomogło dzięki wielkie
+1 głos
odpowiedź 4 kwietnia 2015 przez hit02 Nałogowiec (33,970 p.)
W g++ się kompiluje, ale wypluwa ostrzeżenie o tym, że what może być niezainicjlizowane.
komentarz 4 kwietnia 2015 przez Iras Obywatel (1,800 p.)
dokładnie to mi wypluwa ;)
komentarz 4 kwietnia 2015 przez hit02 Nałogowiec (33,970 p.)
Przypisz stałą, lub wczytaj cin'em.
komentarz 4 kwietnia 2015 przez Buby Pasjonat (19,590 p.)

Helloł ludzie co ja mówiłem, brak inicjalizacji to jeden problem, a błędne napisanie funkcji to drugie. W założeniu funkcja ma zwrócić prawdę, jeśli zmienna what znajduje się w tablicy. A nasz kolega sprawdzi tylko pierwszy element tablicy.

 

Usuń tego else z pętli, a za pętlą zmień z true na false.

komentarz 4 kwietnia 2015 przez Iras Obywatel (1,800 p.)
dałbym ci dwie łapki do góry ale nie da rady. Pozdrawiam :)
0 głosów
odpowiedź 4 kwietnia 2015 przez szmq Pasjonat (22,770 p.)

zmienna what jest typu int. Napisałeś jej nazwe przy wywołaniu funkcji zamiast konkretnej wartośći. 

zamiast: 

cout<<contains(arr,5,what)<<endl;

przykładowo napisz:

cout<<contains(arr,5,8)<<endl;

komentarz 4 kwietnia 2015 przez Buby Pasjonat (19,590 p.)
Równie dobrze mógł napisać sobie what, a zmienna zainicjalizować.
komentarz 4 kwietnia 2015 przez szmq Pasjonat (22,770 p.)
Słuszna uwaga :) Po prostu powiedziałem co powienin poprawić, a jak to już jego sprawa, ale masz racje :)
0 głosów
odpowiedź 4 kwietnia 2015 przez Iras Obywatel (1,800 p.)
Pomogło dzięki wszystkim za pomoc :)

Podobne pytania

0 głosów
1 odpowiedź 192 wizyt
pytanie zadane 4 kwietnia 2018 w Inne języki przez komputerowy123 Nowicjusz (120 p.)
0 głosów
1 odpowiedź 320 wizyt
pytanie zadane 27 stycznia 2017 w C i C++ przez vega Użytkownik (510 p.)

92,453 zapytań

141,262 odpowiedzi

319,087 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...