View Full Version : Задача по информатика...
Имате ли някаква представа как се решава тази задача:
Да се състави програма, която въвежда редицата от 10 цели числа и намира и извежда произведението от нечетните числа и борят на положителните елементи.
Много ще съм ви благодарен ако ми представите решението! :)
за редицата от 10-те числа можеш да направиш целочислен масив от 10 променливи, но какво значи положителни елементи?!, целочислените стойности в плюс безкрайността или.....?!
Според мен са точно тези - в плюс безкрайността. Но проблема ми е в това че не знам как да я направя и искам да видя просто как става.
първо се дефинира едномерен целочислен масив с десет променливи, след това цикъл с генератор на случайни целочислени числа примерно от -1000 до +1000 за всяка една от десетте променливи, след това цикъл с условен алгоритъм за намиране на нечетните числа от масива чрез процес на прогресивно умножение, като в същият цикъл може да се вмъкне и условен алгоритъм за намиране броят на положителните елементи, за което ще ти трябват още поне две променливи т.е. за двата условни алгоритъма
Първо благодаря, че си правиш труда да отговаряш. Това го учим от 2 месеца и то доста опростено. Не го разбирам за това търся помощ. Бих искал ако имаш възможност и ти се занимава да съставиш самата програма, защото аз не мога, а утре ми предстои доста важен тест. Ако не ти се занимава те разбирам, но ще съм ти много благодарен ако ми помогнеш.
на някакъв конкретен програмен език ли трябва да бъде?, защото аз не владея конкретен
vesi_358
02-20-2012, 16:42
ами ще ти дам най-основното......въпреки, че нямаше да е лошо да кажеш на какъв език ти трябва и какво може и на може да се използва, но карай.. да предположим, че е c++... ако не ще си го попреправиш, то логиката е същата
1. Декларираш си редицата, т.е. масив с 10 елемента, цели числа
int array [10];
2. Въвеждаш от клавиатура някакви стойности на елементите на редицата като минаваш всеки елемент с помощта на цикъл
for(int i=0; i<10;i++){
cout<<"array["<<i<<"]"; // подсещаш се какво въвеждаш
cin>>array[i]; // инициализираш i-eлемент с някаква стойност
}
вече си имаш редица с определени числа
сега ще я обходиш пак, като търсиш специалните числа, к-то се искат от теб, т.е. нечетните и положителните
int p=1; // в p накрая ще имаш произведението на нечетните
int br=0; // накрая в br ще имаш броя на положителните
for(int i=0;i<10;i++){
if(array[i]%2==1) // проверяваш дали i-тия елемент на масива е нечетен, т.е какъв е остатъка му при делене на 2
p=p*array[i]; // ако е нечетен, го вкл към произв на неч елементи
if(array[i]>=0) // пров дали елемента е положителен
br++; // ако е положителен, увеличаваш броя на полож ел с 1
}
cout<<"Произведението на неч числа е "<<p<<endl;
cout<<"Бр на полож елементи е "<<br<<endl;
някои неща не са на сто процента коректни, като например писането на бг и ползването на явно число за броя елементи на масивите, но да не задълбаваме
Благодаря Веси! До някъде го разбрах..
vesi_358
02-20-2012, 16:54
Хъъ, сори, аз с паскал съм скарана, но доста прилича на C++
май синтаксиса е доста подобен, но кажи си въпросите
Просто не знам какви въпроси да ти задам при положение, че C++ дори не бях го чувал до сега, а с тоя Паскал и аз съм доста зле .. Благодаря все пак!
program asdf;
type arr = array[1..10] of real;
var
a: arr;
i, count: integer;
P: real;
begin
count:=0; P:=1;
for i:=1 to 10 do
begin
write('a[',i,']=');
readln(a[i]);
end;
for i:=1 to 10 do
begin
if (i mod 2) = 1 then
P:=P*a[i];
if a[i]>0 then
count:=count+1;
end;
writeln('P=', P:5:2);
writeln('Broi polojitelni elementi: ', count);
readln;
end.
Просто не знам какви въпроси да ти задам при положение, че C++ дори не бях го чувал до сега, а с тоя Паскал и аз съм доста зле .. Благодаря все пак!
lal надявам се не се занимваш с нещо свързан,с информатика
Супер много ми помогна Chacho .. Мерси
lal надявам се не се занимваш с нещо свързан,с информатика
100 % няма да е с информатика :d
А защо имаш изпит върху масиви ? (чисто любопитство просто :D )
vesi_358
02-20-2012, 19:19
Що да го има, сигурно някой го мори в училище, пък не може нищо да им обясни, ама иска
А защо имаш изпит върху масиви ? (чисто любопитство просто :D )
По принцип в моето даскало засилено изучаваме информатика. Но даскалката ни е под всякаква критика.. много е заблудена горката. И да искаш да научиш, да разбереш нещо просто е невъзможно. Та тя дори не знае главни команди и операции в Word, а какво остава за тия сложни програмни езици.. :Д
По принцип в моето даскало засилено изучаваме информатика. Но даскалката ни е под всякаква критика.. много е заблудена горката. И да искаш да научиш, да разбереш нещо просто е невъзможно. Та тя дори не знае главни команди и операции в Word, а какво остава за тия сложни програмни езици.. :Д
Двете неща са много различни, от едното не може да се прави заключение за другото.
kpackapgo
02-21-2012, 16:13
ти сериозно ли хаха положителни елементи + отрицателни - :Д
K_O_L_E_V
02-21-2012, 18:24
Ех, още ли го преподават този паскал.....