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

Nieudana próba konwersji tablicy int na srting

Object Storage Arubacloud
0 głosów
173 wizyt
pytanie zadane 18 marca 2020 w C i C++ przez MiKasProgramista Początkujący (350 p.)

Witam, mam problem. Otóż chcę przekonertować tablicę tupu int na tablicę typu string, co mi się niestety nie udaje. Dodam, że w ten sam sposób konwertowałem wcześniej zmienne z powodzeniem. Proszę o pomoc.

#include <iostream>
#include <math.h>
#include <string>
using namespace std;

int ile;
int main()
{
    cin >> ile;
    int *a 		= new int[ile];
    int *b 		= new int[ile];
    int *potegi = new int[ile];

    for (int i = 0; i < ile; i++) {
        cin >> a[i] >> b[i];
        potegi[i] = pow (a[i], b[i]);
    }
    string potegiS = to_string (potegi);
    
    return 0;
}

 

komentarz 18 marca 2020 przez adrian17 Ekspert (344,860 p.)
`potegi` jest wskaźnikiem na tablicę liczb, na przykład 8, 16, 100.
Jakiego stringa oczekujesz, że dostaniesz po wywołaniu na tym to_string()?
komentarz 18 marca 2020 przez tkz Nałogowiec (42,000 p.)

https://en.cppreference.com/w/cpp/string/basic_string/to_string Żadna dostępna opcja nie przyjmuje wskaźnika.

I popraw alokacje tablic...

1 odpowiedź

0 głosów
odpowiedź 18 marca 2020 przez 1234 Dyskutant (9,140 p.)
Próbujesz zamienić całą tablice na stringa. Powinieneś przeiterować tablice przy pomocy pętli for i w niej pojedynczo zamieniać inty na stringi, ale równie dobrze możesz po prostu w już istniejącej pętli for zapisywać potęgę jako stringa jeżeli nie potrzebujesz jej w formie inta
komentarz 22 marca 2020 przez MiKasProgramista Początkujący (350 p.)

Zapisałem te potęgi w tablicach stringów, jednak gdy chcę jakąś wyświetlić na ekranie to po uruchomieniu programu i wpisaniu liczb, wyświetlane są m.in znak zapytania w obramowaniu zamiast potęgi.

#include <iostream>
#include <math.h>
#include <string>
using namespace std;

int ile;
int main()
{
    cin >> ile;
    int *a = new int [ile];
    int *b = new int [ile];

    string *potegi   = new string [ile];
    int    *ostatnia = new int    [ile];

	for (int i = 0; i < ile; i++) {
        cin >> a[i] >> b[i];
       potegi[i] = pow (a[i], b[i]);
    }
    cout << potegi[0];

    return 0;
}


 

1
komentarz 22 marca 2020 przez 1234 Dyskutant (9,140 p.)

Po drobnych modyfikacjach działa i zapisuje wyniki zarówno w intach jak i w stringach:

#include <iostream>
#include <math.h>
#include <string>
using namespace std;

int ile;
int main()
{
    cin >> ile;

    int a[ile];
    int b[ile];

    int potegi[ile];
    string potegiS[ile];

    for(int i = 0; i < ile; i++) {
        cin >> a[i] >> b[i];
        potegi[i] = pow(a[i], b[i]);
        potegiS[i] = to_string(potegi[i]);
    }

    for(int i : potegi) {
        cout << i << endl;
    }

    for(string i : potegiS) {
        cout << i << endl;
    }

    return 0;
}

 

komentarz 23 marca 2020 przez MiKasProgramista Początkujący (350 p.)
Dzięki za pomoc!

Podobne pytania

0 głosów
1 odpowiedź 2,538 wizyt
0 głosów
2 odpowiedzi 162 wizyt
pytanie zadane 7 października 2020 w C# przez Jakub Michalik Użytkownik (850 p.)
0 głosów
1 odpowiedź 459 wizyt
pytanie zadane 17 stycznia 2019 w C i C++ przez Igor Użytkownik (740 p.)

92,576 zapytań

141,426 odpowiedzi

319,650 komentarzy

61,961 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

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy 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!

...