Tablice zmiennych
Kusek
24.08.2010
Witam, zacząłem się nie dawno uczyć C++ (2 dni temu) i doszedłem w kursie do tablic zmiennych. Przeczytałem cały dział wszystko git, potem kazali zrobić zadanie o to jego treść
Więc od razu zacząłem brać się do roboty, napisałem już sobie kodzik, szczęśliwy kompiluje go żadnego błędu, włączam program a tutaj jakieś kosmiczne wyniki
a tutaj mój kodzik
czy da się to jakoś zerować ??
1. Napisz program, który wykona poniższe zadania: -> 2 + 7 * 16 - 8 -> 22 * 2 : 11 -> 8383 - 222 + 292 * 8 -> 5 * 2 * 4 Wyniki zapisz do tabeli, a następnie wyświetl je na ekranie.
Więc od razu zacząłem brać się do roboty, napisałem już sobie kodzik, szczęśliwy kompiluje go żadnego błędu, włączam program a tutaj jakieś kosmiczne wyniki
Dzialanie Wynik -------------------------------- 2+7*16-8 = 11576 22*2:11 = 12593 8383-222+292*8 = 10808 5*2*4 = 10804
a tutaj mój kodzik
#include <iostream>
#include <conio.h>
const short MAX_ZNAKOW = 16;
const short LICZBA_DZIAL = 5;
using namespace std;
int main()
{
char dzialania[LICZBA_DZIAL][MAX_ZNAKOW] = {
{'2', '+', '7', '*', '1', '6', '-', '8'},
{'2', '2', '*', '2', ':', '1', '1'},
{'8', '3', '8', '3', '-', '2', '2', '2', '+', '2','9', '2', '*', '8'},
{'5', '*', '2', '*', '4'},
};
short wynik[LICZBA_DZIAL] = {'2+7*16-8','22*2/11','8383-222+292*8','5*2*4'};
cout <<"Dzialanie "<<"Wynik\n";
cout <<"--------------------------------\n";
cout <<dzialania[0]<<" = "<<wynik[0]<<endl;
cout <<dzialania[1]<<" = "<<wynik[1]<<endl;
cout <<dzialania[2]<<" = "<<wynik[2]<<endl;
cout <<dzialania[3]<<" = "<<wynik[3]<<endl;
getch();
return 0;
}
czy da się to jakoś zerować ??
G[o]Q
24.08.2010
short wynik[LICZBA_DZIAL] = {2+7*16-8,22*2/11,8383-222+292*8,5*2*4};
24 sierpień 2010 - 21:04:
po drugie
char dzialania[LICZBA_DZIAL][MAX_ZNAKOW] = { "2+7*16 -8", "22*2:11"}, "8383-222+292*8","5*2*4" };a po 3 uzyj petli

Kusek
24.08.2010
wiem że to dobrze, ale w zadaniu karzą zrobić tym sposobem
przecież to 1 to jest to samo tylko usunąłeś
@Edit
No dzięki pomogło to 1, ale jak to się dzieje że usunąłeś tylko
A do tej pętli to jaki kod?
@Edit2
znalazłem coś
i za bardzo nie rozumiem
cały kod
Użytkownik Frajer edytował ten post 24.08.2010 21:17
przecież to 1 to jest to samo tylko usunąłeś
' 'a pętli czy jak?

@Edit
No dzięki pomogło to 1, ale jak to się dzieje że usunąłeś tylko
' 'i wwszystko ładnie obliczyło

A do tej pętli to jaki kod?
@Edit2
znalazłem coś
7. Pętla
for (i=0; i<a; i++){
for (j=0; j<b; j++){
cout << "#";
}
cout <<"\n";
}
Widzimy tutaj pętle for zawartą w pętli for. Niezły mętlik ale tak naprawdę to bardzo proste. Program najpierw przypisuje i wartość 0 a następnie sprawdza kiedy ma się zatrzymać, a zatrzyma się wtedy gdy i będzie mniejsze od podanej wartości boku a. Następnie pętla zawierająca zmienną j powtórzy ją w linii ciągłej tyle razy na ile długi jest bok b.
Będzie tyle „#” w jednej linii na ile szeroki jest ten prostokąt, a szerokość ta powtórzy się tyle razy na ile wysoki on jest.
Aby wszystko nie było w linii ciągłej niezbędne jest
dodanie odstępu na końcu pętli (cout << „\n”
i za bardzo nie rozumiem

cały kod
#include <cstdlib> #include <iostream> using namespace std; int main() { int a, b, i, j; cout << "Wprowadz dlugosci bokow a i b prostokata \n" << endl; cout << "a = "; cin >> a; cout << "b = "; cin >> b; cout << "\n"; if ((a<0) || (b<0) || (a>30) || (b>30) || (1*a!=a) || (1*b!=b)) { cout << "\nWprowadziles ujemne lub zbyt duze wartosci bokow\n"; }else for (i=0; i<a; i++){ for (j=0; j<b; j++){ cout << "#"; } cout <<"\n"; } cout << "\n"; system("PAUSE"); return EXIT_SUCCESS; }
Użytkownik Frajer edytował ten post 24.08.2010 21:17
DarkGL
24.08.2010
#include <iostream> #include <string> #include <conio.h> #define MAX_ZNAKOW 16 #define LICZBA_DZIAL 5 using namespace std; int main() { string dzialania[LICZBA_DZIAL] = { "2 + 7 * 16 - 8", "22 * 2 : 11", "8383 - 222 + 292 * 8", "5 * 2 * 4" }; int wynik[LICZBA_DZIAL] = {2+7*16-8,22*2/11,8383-222+292*8,5*2*4}; cout <<"Dzialanie "<<"Wynik\n"; cout <<"--------------------------------\n"; for(int i = 0;i<sizeof(dzialania)/LICZBA_DZIAL;i++){ cout <<dzialania[i]<<" = "<<wynik[i]<<endl; } getch(); return 0; }
Kusek
24.08.2010
Dark nigdy bym nie wpadł na taki pomysł
, jeszcze nie doszedłem do Pętl w kursie. Pytałem się bardziej o poprawienie kodu (Goq thx) w nowatorski sposób 
@Edit
Proszę nie zamykać bo będę robić drugie zadanie to jak coś nie będę umieć to się was zapytam jbc.
Użytkownik Frajer edytował ten post 24.08.2010 21:30


@Edit
Proszę nie zamykać bo będę robić drugie zadanie to jak coś nie będę umieć to się was zapytam jbc.



Użytkownik Frajer edytował ten post 24.08.2010 21:30
G[o]Q
25.08.2010
Frajer chodzilo o to ze dzialanie dales w "" a to jest traktowane jako txt a nie wyrazenie do obliczenia to po pierwsze po drugie tablica charow moze tworzyc c-string jesli zamiast pojedynczych elementow uzyjesz "" polecam symfonie c++ albo jakis ogarniety poradnik bo jesli w tym twoim cie ucza takiego czegos to watpie zebys daleko zaszedl

Kusek
27.08.2010
no mam problemik
, czy da się zrobić aby mój interfejs sam się zmieniał??

cout<<"--------------------------------------------\n"
<<"Marka"<<" | "<<"Model"<<" | "<<"Pojemnosc"<<" | "<<"Predkosc max\n"
<<"--------------------------------------------\n";
cout<<marka<<" | "<<model<<" | "<<pojemnosc<<" | "<<max<<endl
<<marka2<<" | "<<model2<<" | "<<float(pojemnosc2)<<" | "<<max2<<endl
<<marka3<<" | "<<model3<<" | "<<float(pojemnosc3)<<" | "<<max3<<endl;
cout<<"--------------------------------------------\n";
Kusek
27.08.2010
hmm, chcę aby " | " się przesuwały razem z tekstem i aby były połączone ze sobą, aby robiły ładny szkielet

DarkGL
27.08.2010
kombinuj z
cout.width(liczba);
lub znakiem \t
miałem gdzieś kod ale znaleźć go nie mogę
Użytkownik DarkGL edytował ten post 27.08.2010 18:32
cout.width(liczba);
lub znakiem \t
miałem gdzieś kod ale znaleźć go nie mogę
Użytkownik DarkGL edytował ten post 27.08.2010 18:32
G[o]Q
27.08.2010
hmm albo poprostu jak chcesz ladna ramke to mozesz wziąć sobie patent jeszcze z czasow pascala a mianowicie dlugosc najwiekszego txt'u i ustawic all ladnie spacjami tylko nie pamietam jak to bylo ale chyba
zmienna_typu_string.length
Kusek
27.08.2010
i don't understand you, write me all cod, please

@Edit
dobra poradziłem sobie \t
nie zamykać jeszcze
Użytkownik Frajer edytował ten post 27.08.2010 19:03








@Edit
dobra poradziłem sobie \t
nie zamykać jeszcze

Użytkownik Frajer edytował ten post 27.08.2010 19:03
Snejk47
29.08.2010
Taki mały OT, nie bijcie 
Jeżeli masz zamiar programować tylko na Windowsa to nie wiem czy jest sens pisania w czystym C++, Windowsy przejmuję teraz .NET (a i na linuxa szybko sobie z portowali (MONO)). Co więcej używając .NET można pisać aplikację na wszystkie Windowsy, np. Windows Mobile: GPS'y (przynajmniej mój ma WMoblile
), palmtopy PocketPC, palmofony oraz smartphone'y.\
Co więcej szybciej można stworzyć programy. W .NETcie można pisać w C++, VB.NET, C#, J# i inne jak kto lubi. Osobiście polecam VB.NET lub C#. VB.NET bardzo prosty, C# bardziej "wspierany".
Btw. Windows Vista, Se7en ma już .NET Frameworka
Pozdro.
Użytkownik TheSnake edytował ten post 29.08.2010 11:44

Jeżeli masz zamiar programować tylko na Windowsa to nie wiem czy jest sens pisania w czystym C++, Windowsy przejmuję teraz .NET (a i na linuxa szybko sobie z portowali (MONO)). Co więcej używając .NET można pisać aplikację na wszystkie Windowsy, np. Windows Mobile: GPS'y (przynajmniej mój ma WMoblile


Btw. Windows Vista, Se7en ma już .NET Frameworka

Pozdro.
Użytkownik TheSnake edytował ten post 29.08.2010 11:44
Snejk47
29.08.2010
.NET to skrót od .NET Framework, można by powiedzieć, że to drugie "Windows API" Wikipedia. Działa podobnie jak Java, lecz dużo szybciej.
Inaczej mówiąc jest to zbiór bibliotek ułatwiających pracę nad programem. Jak już pisałem wcześniej można tego używać w różnych językach VB.NET (odświeżony Visual Basic), C#, C++, J# - Java.
Inaczej mówiąc jest to zbiór bibliotek ułatwiających pracę nad programem. Jak już pisałem wcześniej można tego używać w różnych językach VB.NET (odświeżony Visual Basic), C#, C++, J# - Java.
Snejk47
29.08.2010
Nie, Kurs C#, dot. starszej wersji .NET'a, ale przy nowszych oprócz większej funkcjonalności nie ma różnicy.czYli to zwykłe biblioteki
?
DarkGL
29.08.2010
win api to biblioteka więc .NET także chyba że to platforma do rozprowadzania oprogramowania
Użytkownik DarkGL edytował ten post 29.08.2010 14:39
Użytkownik DarkGL edytował ten post 29.08.2010 14:39