argon bulletin board

Факултети => Факултет по математика и информатика => Темата е започната от: ot4aqna в 14.11.2006, 21:54:53

Титла: задача по c++
Публикувано от: ot4aqna в 14.11.2006, 21:54:53
искам да ми помогнете за една задачка. ако не за решението, то поне с по прости думи да ми обясните условието. а то е: направете програма за сливане на два вектора с еднаква дължина като редувате елементите. отпечтайте резултатния вектор.    ние сме учили най-елементарните неща if, for... така, че може би е елементарна, но мен ме затруднява... помогнете
Титла: Re: задача по c++
Публикувано от: Stilgar в 14.11.2006, 23:17:16
znachi vuprosi:
1) znaesh li kakvo e vektor ot matematicheska gledna tochka
2) znaesh li kak se predstavia programno vektor
Титла: Re: задача по c++
Публикувано от: ot4aqna в 15.11.2006, 09:39:22
ако ми кажете как се представя програмния вектор, мисля че ще мога да си я направя и сама. ето това сам написала: Програма:
# include <iostream.h>
void main ( )
{
int vector [1];
int a,b;
cout<< “въведете дължината на векторите”;
cin>>a>>b;
float i,c,n;
for(i=0; i<=n; i++)
if(a==b) c=a+b
cout<<”резултатния вектор е”<<c;
}
Титла: Re: задача по c++
Публикувано от: Ivelinka в 15.11.2006, 10:35:16
ако ми кажете как се представя програмния вектор, мисля че ще мога да си я направя и сама. ето това сам написала: Програма:
# include <iostream.h>
void main ( )
{
int vector [1];
int a,b;
cout<< “въведете дължината на векторите”;
cin>>a>>b;
float i,c,n;
for(i=0; i<=n; i++)
if(a==b) c=a+b
cout<<”резултатния вектор е”<<c;
}

аз не знам точно за вектора, обаче това n? Получава ли стойност въобще?

Нещо много странно ми се струва изпълнението на тоя код, каква му е целта? Да  изчисли c=a+b ?
Титла: Re: задача по c++
Публикувано от: ot4aqna в 15.11.2006, 10:40:48
това искам да е поне. трябва да отпечата резултатния вектор на a и b. а за n писах число, но незнам дали може и затова оставих n
Титла: Re: задача по c++
Публикувано от: Ivelinka в 15.11.2006, 10:54:51
за какво ти е този цикъл?
няма ли да събираш a и b еднократно?
с едно пускане на програмата - един резултат, аз това виждам от нея? ако е така нямаш нужда от цикъл (бтв на цикъла може да имаш и конретно число вместо n ).
Титла: Re: задача по c++
Публикувано от: Ivelinka в 15.11.2006, 10:55:58
# include <iostream.h>
void main ( )
{
int vector [1]; // това къде се използва?
int a,b;
cout<< “въведете дължината на векторите”;
cin>>a>>b; // окей въвеждаш 2 стойности
float c; // може и double да е

if(a==b) c=a+b ;
cout<<”резултатния вектор е”<<c;
}

така няма ли да стане? ако разбирам правилно идеята...


Титла: Re: задача по c++
Публикувано от: ot4aqna в 15.11.2006, 11:03:27
 като масив мислех  да  представя векторите. значи става и без for, така ли?
Титла: Re: задача по c++
Публикувано от: Ivelinka в 15.11.2006, 11:11:24
ми аз лично в тази задача мисля , че няма смисъл. виждам , че ще имаш само 2 вектора. "направете програма за сливане на два вектора ".

"с еднаква дължина " - явно трябва да се въведат така, може би трябва да правиш проверка?

Не е казано , че се въвеждат n на брой вектори и от тях да се слеят само тези, които са с еднаква дължина. ..

Дано не те объркам повече  :roll:


Титла: Re: задача по c++
Публикувано от: antoniy в 15.11.2006, 11:13:01
# include <iostream.h>
void main ( )
{
int vector [1]; // това къде се използва?
int a,b;
cout<< “въведете дължината на векторите”;
cin>>a>>b; // окей въвеждаш 2 стойности
float c; // може и double да е

if(a==b) c=a+b ;
cout<<”резултатния вектор е”<<c;
}

така няма ли да стане? ако разбирам правилно идеята...




Да. Така става, но само ако искаш да напишеш толкова неща, за да събереш 2 целочислени числа, ако те са равни, в трето и да го отпечаташ. Май-май задачата не е такава. :)

За двата вектора в и трябват 2 масива или 1 двумерен масив от 2 реда и N стълба, който да използвате за двата вектора (N може да го сложите 100 например, защото на тоя етап никой не може да ви иска динамично заделяне на масив).

int vtr1[100], vtr2[100];

Въвеждаш a <=100, за да зададеш дължината на вектора, който искаш да ползваш (b не ти е необходимо, защото е казано, че двата вектора са с еднаква дължина).

После си завърташ един цикъл от 0 до a-1, за да въведеш стойностите на всеки вектор и после си извършваш исканото в задачата.
Титла: Re: задача по c++
Публикувано от: Ivelinka в 15.11.2006, 11:15:20
аа сега стана ясно  :-D айде ot4aqna не се отчайвай !  :wink:
Титла: Re: задача по c++
Публикувано от: Stilgar в 15.11.2006, 11:28:16
emi niama smisul da povtariam tova koeto cipher e napisal
samo shte kaje che vektora matematicheski e mnojestvo ot koordinati
vuprosnoto se predstavia programno chrez masivi ili spisuci, no ne zakachai spisucite na toia etap

chisto na programistki jargon zadachata zvuchi taka
imash 2 masiva s ednakva duljina slei gi v 3ti kato reduvash elementite

no e vajno da se nauchish da si prevejdash matematicheskite termini v programistki zashtoto programite sa neobhodimi za realnia sviat koito ne e programmer friendly, a si e chista matematika
Титла: Re: задача по c++
Публикувано от: ot4aqna в 16.11.2006, 23:20:58
благодаря ви, че ми помогнахте. допуснаха ме до изпита и изкарах 5
:)
Титла: Re: задача по c++
Публикувано от: Ivelinka в 17.11.2006, 10:05:45
vidq li, samo deto se pritesnqvashe  :wink: