NETWARS - CZĘSTO ZADAWANE PYTANIA

Zjedź na dół

2008-11-06 17:22:24
[#1] MagnUm^
Mam takie zadanie, w którym głównie chodzi o to, że program rozpoznaje znaki wpisane z klawiatury i podejmuje odpowiednie akcje. Np:

$1 += 2

,tu trzeba do pierwszej komórki tablicy dodać 2.


$3 += $2
,tu zawartość trzeciej komórki dodać do drugiej.


Jakby ktoś mógł mi dać jakieś rady, albo najlepiej odezwać się na gg: 425551
2008-11-06 17:43:04
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int a;
int tab[a];
cout<<"podaj kolejno 3 liczby"<<endl;

for (a=0;a<3;a++)
{
cin>>tab[a];
}

cout<<"wartosci w tabeli po zmianach: "<<endl;
tab[0]=tab[0]+2;
tab[1]+=tab[2];

for (a=0;a<3;a++)
{
cout<<tab[a]<<endl;
}
getch();
}
_______
mam nadzieje ze nie napisalem nic glupiego ; d uzywam dev-cpp kompilatora bo jest darmowy

i ogolnie to nie wiem dokonca o co biega w twoim zadaniu

Zmieniony 2008-06-11 17:46:31 przez Repomaniak

2008-11-06 17:46:34
[#3] MagnUm^
Ale jak zrobić, aby program rozpoznawał np. " $2 " wpisane z klawiatury.
2008-11-06 17:49:45
chcesz aby to rozpoznalo ciag znakow "$2" zamienilo na wartosc liczbowa i dopiero to co ja zrobilem ?
2008-11-06 17:52:46
[#5] MagnUm^
dokladnie
2008-11-06 18:06:09
ja jebie, przeciez masz forum dla eti infy i tam jest topic o tym projekcie to sie pytaj tam xd
2008-11-06 18:07:16
[#7] MagnUm^
głupio mi tam ;|
2008-11-06 18:08:38
to nie wiem jak ;d
2008-11-06 19:40:43
[#9] pwl[SSF]
Jest taka zabawna funkcja jak scanf, polecam :>
2008-11-06 19:55:21
[#10] Goter
"int a;
int tab[a];"

ekhm ?
2008-11-06 20:11:42
[#11] pwl[SSF]
No co, kompilator się najwyżej popluje że nie wolno deklarować zmiennych tablicowych o zmiennym rozmiarze ;>
2008-11-06 20:54:16
[#12] Goter
no to może chociaż
"int a = 3;
int tab[a];"

bo tak to w zmiennej "a" mamy śmieci ;p
2008-11-07 02:25:19
[#13] Repomaniak
#include<iostream>
#include<conio.h>
int main()
{
unsigned char znak;
using namespace std;
char a[100]; //char a; zeby dzialalo
cin>>a;


znak=a;
std::cout<<"znak "<<znak<<" kod: "<<static_cast<int>(znak)<<std::endl;
getch();
return(0);
}


invalid conversion from `char*' to `unsigned char'
I DUPA xd przy literze na cyfre dziala

niestety rusk nie jest super programista
2008-11-07 02:55:19
[#14] Nargil
#13 funkcja atoi ze stdio.h (albo stdlib.h lub string.h, głowy sobie nie dam uciąć, ale raczej stdio.h) waćpanie. Static cast co najwyżej wskaże ci adres w pamięci danego łańcucha znaków.

char a[4] = "123";
int i = atoi(a);
std::cout << i << std::endl;

no i oczywiście
unsigned char znak
to 1 znak. Jak ty chcesz w obszar pamięci przeznaczony dla 1 znaku wrzucic nagle 100 znaków ? Czarodziej czy co ?

#10
poniższy kod też nie zadziała.
int a = 3;
int tab[a];

w c należy użyć:
int a = 3;
int* tab = (int*) malloc(sizeof(int)*a);

a gdy już nie potrzebujemy tablicy tab (lub na zakonczeniu programu)
free(tab);

natomiast w c++
int a = 3;
int* tab = new int[a];

a gdy już nie potrzebujemy tablicy tab (lub na zakonczeniu programu)
delete [] tab;


wszak nie będzie to dosłownie "tablica", ale na twoim poziomie możesz przyjąć, że nią jest ;->

Zmieniony 2008-07-11 02:59:35 przez Nargil

TEMAT ZAMKNIĘTY po 2 tygodniach automatycznie.