Peršokti į turinį
  • ŽAIDIMAI
  • , ŽAIDIMAI
  • ŽAIDIMAI

tiesinis sarasas c++


Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 1507 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

Labas vakaras,

man reiketu pagalbos issprendziant sita uzdavini:

 

Parašykite programą, kuri atlieka šias funkcijas:

-Sukuria vienakryptį tiesinį sąrašą.

-Atspausdina vienakryptį tiesinį sąrašą.

-Įterpia naują elementą į nurodytą tiesinio sąrašo poziciją.

-Įterpia elementą prieš tam tikrą sąraše egzistuojantį elementą.

-Ištrina tiesinį sąrašą.

- Ištrina pasirinktą tiesinio sąrašo elementą

Funkcijų iškvietimui sukurkite pasirinkimų meniu.

 

Nelabai zinau kaip iterpti nauja elementa i nurodyta tiesinio saraso pozicija, iterpti priest tam tikra sarase egzistuojanti elementa ir istrinti pasirinkta tiesinio saraso elementa.

 

#include <iostream>
#include <cstdlib>
using namespace std;
struct tipas
{
    int data;
    tipas *next;
    tipas *prev;
};


    int n;
    tipas *pirmas;
    tipas *naujas;
    tipas *galas;
    tipas *temp;

void meniu()
{
    cout<<"1. Sukuria vienakrypti tiesini sarasa"<<endl;
    cout<<"2. Atspausdina vienakrypti tiesini sarasa"<<endl;
    cout<<"3. Iterpia nauja elementa i nurodyta tiesinio saraso pozicija"<<endl;
    cout<<"4. Iterpia elementa pries tam tikra sarase egzistuojanti elementa"<<endl;
    cout<<"5. Istrina tiesini sarasa"<<endl;
    cout<<"6. Istrina pasirinkta tiesinio saraso elementa"<<endl;
    cout<<"0. Isejimas"<<endl;

}

void saraso_su()
{
            
            cout << "Is kiek elementu bus sudarytas sarasas? ";
            cin >> n;
            naujas = new tipas;
            cout << "Iveskite 1 elementa: ";
            cin >> naujas->data;
            naujas->prev=NULL;
            pirmas=naujas;
            for(int i=1; i<n-1; i++)
            {
                temp=naujas;
                naujas->next=new tipas;
                naujas=naujas->next;
                cout << "Iveskite " << i+1 << " elementa: ";
                cin >> naujas->data;
                naujas->prev=temp;
            }
            galas=naujas;

}

void saraso_ats()
{

         naujas=pirmas;
        for(int i=0; i<n-1; i++)
        {
            cout << naujas->data << "->";
            naujas=naujas->next;
        }
}

void saraso_el()
{
        
        
        
    
}

void saraso_istr()
{
     naujas=pirmas;
    for(int i=0; i<n-1; i++)
    {
        pirmas=naujas->next;
        delete(naujas);
        naujas=pirmas;
    }
    n=0;
    cout << "Sarasas istrintas";

}

void istr_el()
{
    
    

}

void el_iterp()
{
            
            int iterpiamas;
            cout << "Iveskite elementa"<<endl;
            cin >> iterpiamas;
            

}

int main()
{
    
    int funkcija;
    while (true)
    {
        cout<<endl;
        meniu();
        cout<<endl;
        cout << "Pasirinkite funkcija: " ;
        cin >> funkcija;
        cout << endl <<endl;
        if(funkcija==1)
        {
            saraso_su();
        }
        if(funkcija==2)
        {
           saraso_ats();

        }
        if (funkcija==3)
        {
            el_iterp();
           
        }

        
        if(funkcija==4)
        {
            
        }
        if(funkcija==5)
        {
        
        saraso_istr();
            
        }
        
        if(funkcija==6)
        {
            istr_el();
        }
        if(funkcija==0)
        {
        return 0;
        }
    
    }
}
Redaguota , nario matematika8520
n
Nuoroda į komentarą
Dalintis per kitą puslapį

Atradau buda kaip iterpti elementa i tam tikra pozicija:

Citata

 

void el_iterp()
{

            tipas *prev;
            int k,pos,ch;
            cout<<"iveskite elementa"<<endl;
            cin>>k;
            tipas *temp1=new tipas;
            temp1->data=k;
            temp1->next=NULL;
            cout<<"iveskite pozicija ";
            cin>>pos;
            prev=NULL;
            naujas=pirmas;
            int c=1;
            while(c!=pos)
            {
            prev=naujas;
            naujas=naujas->next;
            c++;
            }
            if(c==pos)
            {
            prev->next=temp1;
            temp1->next=naujas;
            }
            else
            cout<<"neisikelia";

}

 

Tik dar nelabai zinau kaip iterpti nauja elementa priest tam tikra elementa, ir kaip istrinti pasirinkta elementa

Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 1507 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...