Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Помощ за задачи на Pascal (merged)

Featured Replies

if a= или по голямо then ала бала (rofl)

  • Отговори 622
  • Прегледи 131,9k
  • Създадено
  • Последен отговор

Да се състави програма на Паскал, която пресмята сумата на целите числа в интервала [a;b], които се делят на 3. (a и b са цели произволно въведени числа.)

моля ви помогнете..... нямам идея как ще стане тва.. Публикувано изображение

според мен трябва да стане с цикъл, значи четеш числата от клавиатурата след което правиш проверка вътре в цикъла дали се сумата се дели на 3, ако да я извеждаш, в противен случай пробължаваш да събираш напред. пп. ако имаш горе долу представа от паскал ще може да я направиш, успех :speak:

Ако някой може да помогне с програмата Паскал, доста спешничко е.... Благодаря предварително!

Задача1. Напишете програма за изчисляване на Y, като

i : (17 div 3) * 5

x: sqr (i)

y: -5 * x + i

Задача2. Напишете програма за намиране стойността на функцията

f(x) =

} x2 + 2 , x < 0

} 5 , x = 0

} x2+5 , x > 0

Редактирано от Columbian Soul (преглед на промените)

Да се напише програма която увеличава по-малко от две дадени цели неравни числа два пъти, а по голямото oстава без изменение <--- Имайте напредвит че в Учебника на брат ми е дадена със ЗВЕЗДА =))

Да се напише програма която увеличава по-малко от две дадени цели неравни числа два пъти, а по голямото oстава без изменение <--- Имайте напредвит че в Учебника на брат ми е дадена със ЗВЕЗДА =))

... 
  If a > b then b := b*2
			  else a := a*2;
...

Сигурен ли си , с декларирането и другото ясно ще се справи ,ама същноста много проста ми изглежда ?

Сигурен ли си , с декларирането и другото ясно ще се справи ,ама същноста много проста ми изглежда ?

О, аз съм допуснал и грешка. Не проверява дали не са равни. Но мисля, че ще можеш да си го оправиш.

Здравейте!Имам огромна нужда от помощ за Паскал.Моля ви да ми отговорите ;) възможно най-бързо. Имам следната задача: Като използвате "down to" да се пресметне и изведе произведението на всички кратни на 7 числа в затворен интервал от 200 до 30. -Трябва да бъде направена с проверка if -дали числата са кратни Ето какво направих program pr3; var s,m,n,i:integer; begin m:=200; n:=30; s:=0; for i:=m down to 7 do div; if 200 div 7 then; if 30 div 7 then; else begin i:=i-1; writeln ('sumata e =7') end.

Здравейте!Имам огромна нужда от помощ за Паскал.Моля ви да ми отговорите ;) възможно най-бързо.

Имам следната задача:

Като използвате "down to" да се пресметне и изведе произведението на всички кратни на 7 числа в затворен интервал от 200 до 30.

-Трябва да бъде направена с проверка if -дали числата са кратни

Функцията mod ти дава дали има остатък след делене. Да кажем, че s е така търсеното произведение. Оператора down to не си го спомням в паскал, но ако е така както си го дал (да се изменя с -1),то решението е следното:

program pr3;

var s, i:integer;

begin

s:=1;

for i:=200 down to 30 do

if i mod 7 = 0 then s:=s*i;

end;

writeln ('произведението е: ', s)

end.

Редактирано от yvsot (преглед на промените)

Програмата е елементарна, та няма къде толкова да се сгреши. Дай ми синтаксиса на "down to" и ще оправим нещата. Пробвай го в обратен ред, трябва да е аналогично:

program pr3;

var s, i:integer;

begin

s:=1;

for i:=30 to 200 do - същото като 200 down to 30

begin - горе съм пропуснала началото на единия край

if i mod 7 = 0 then s:=s*i;

end;

writeln ('произведението е: ', s)

end.

Редактирано от yvsot (преглед на промените)

Здравейте! Незабавно ми трябва помощ за решаването на задачата по информатика за Паскал . Ако може някой да я реши, ще съм му много благодарен!

Задача2. Напишете програма за намиране стойността на функцията

f(x) =

x2 + 2 , x < 0

S , x = 0

x2 +S , x > 0

Редактирано от Columbian Soul (преглед на промените)

Привет! Имам един въпрос за алгоритъм на паскал... Кода сам ще си го напиша, но не мога да измисля как ще стане алгоритъма. Идеята е следната: уравнението R(x1) = {x1} U T1{x1} U T2{x1} U ... U Tn{x1} Като замисъла е: х1 е възел от една мрежа (в случая граф). Т1{x1} е множество от всички върхове, достигнати с едно рамо от мрежата, Т2{x1} e множеството от върхове, достигнати с 2 рамена. n е броя върхове. Ей това нещо трябва да го напиша като процедура в една 20пъти по-голяма програма, и само то остана. та въпроса ми е, как аджаба да направя алгоритъм, който да проверява кои върхове изпълняват тея условия, след това да записва за всяко R(x) кои върхове отговарят на някое от тея условия. Накрая трябва да получа една матрица с 1 ако даден връх отговаря на някое от условията за Х1 и 0 ако не отговаря на нито едно условие. Помощ моля...

Здравейте имам нужда от помощ!!! :) Трябват ми две задачи на паскал от които нищо не схващам,и ви моля за помощ! задача 1. Съставете програма на Паскал, която: а)въвежда в масив от записи резулатите от олимпиадата по информатика - всеки запис съдържа информация за името и фамилията на ученика, училището в което учи и резултата от представянето му на олимпиадата (в брой точки от 0 до 100) б) да се изведат имената на участниците с брой точки над 50; в) да се намери и изведе: най добрият и най-слабият резултат. 6 точки задача 2. Съставете програма на Паскал, която: а) създава файл с 3 елемента от тип запис kniga - име. автор и цена, наречен Knigi.dat; б) отпечатва стойността на всички елементи на файла. 4 точки Трябват ми и 2те задачи за 6 ... само 2рата е за 4 а само 1вата е за 5 ... Благодаря предварително за обърнатото внимание :):wors:

задача 2. Съставете програма на Паскал, която:

а) създава файл с 3 елемента от тип запис kniga - име. автор и цена,

наречен Knigi.dat;

(...)

Ако винаги чакаш задачите си написани наготово, никога няма да се научиш сам. Затова ще се опитам да ти помогна само за част от заданието ти, като ще оставя коментари, които, надявам се, поне малко ще са ти от полза, за да разбереш нещата. Между другото, не съм проверил дали написаното от мен работи. Съвсем възможно е да има и грешки, тъй че си го провери.

Program blackcat93;

   Type 
			 kniga = Record (* Дефинираме записа *)
			 Ime   : String; (* Име на на книгата *)
			 Avtor : String; (* Име на автора *)
			 Cena : Real;	(* Цена на книгата *)
	  End;					  (* Край на дефиницията *)

			flz = file of kniga (* flz е файл от тип kniga *)

   Var (* Декларираме променливите *)
			  A : kniga; (* Променлива от тип kniga *)
			  F : flz;	  (* Тази променлива ни е нужна за файла *)
			  I : byte;   (* Брояч *)

   begin (* Главна програма *)

 Assign(F, 'Knigi.dat'); (* Казва на F да използва файл с име Knigi.dat *)
 Rewrite(F); (* Създаваме F (Ако вече съществува, ще бъде презаписан.) *)

  For I := 1 to 3 do Begin (* Три пъти програмата ще изпълни следните инструкции: *)

	  Write('Моля, въведете име на книга: '); Readln(A.Ime); (* Чете името на книгата *)
	  Write('Име на автора: '); Readln(A.Avtor);					  (* Чете името на автора *)
	  Write('Цена на книгата: '); Readln(A.Cena);				   (* Чете цената на книгата*)
	  Writeln; (* Така ще отделяме всяко следващо въвеждане с ред от предходното *)
	  Write(F, A); (* Ще запише стойностите, съхранени в А (Име, автор, цена) във файла *);
 
 End; (* Край на цикъла For *)

close(F) (* Затваряме файла. *)
End.	  (* Край на програмата *)

Ако винаги чакаш задачите си написани наготово, никога няма да се научиш сам. Затова ще се опитам да ти помогна само за част от заданието ти, като ще оставя коментари, които, надявам се, поне малко ще са ти от полза, за да разбереш нещата. Между другото, не съм проверил дали написаното от мен работи. Съвсем възможно е да има и грешки, тъй че си го провери.

много благодаря ... принципно и аз имам да пиша същите задачи, но за определено време не посещавах информатиката ( по лични причини ) и уж както бях на Ти с нея сега незнам за какво става на дума ....

ако може някой може да ми каже как става 1ва задача моля да сподели ... ( аз бързо схващам и да кажем че с това подробно описание на миналата задача ми отне 10 мин не повече за да усмисля начина на създаване ) ( а м/у др не е задължителна задачата да е с подробно инфо ... както тази която е написана по горе ... може само задачата да ми дадете или по точно алгоритъмът на работа ... )

задача 1. Съставете програма на Паскал, която:

а)въвежда в масив от записи резулатите от олимпиадата по информатика - всеки запис

съдържа информация за името и фамилията на ученика, училището в което учи и резултата от представянето му на олимпиадата (в брой точки от 0 до 100)

(...)

Type  
	  Uchenici = Record			 (* Дефинираме записа *)
		Ime, Fam, Uch : String;	(* Име, фамилия, училище *)
		Res : 1..100					 (* Резултата от 1 до 100 *)
	  End;								  (* Край на дефиницията *)

Var 
	 A : Array[1..20] of Uchenici;  (* Масив от типа Uchenici. Ако не знаем колко на брой ще са те, можем да зададем голямо чило тук и да ползваме колкото са ни нужни *)
	
(...)

Въвеждането после е идентично с това от другата задача.

б) да се изведат имената на участниците с брой точки над 50;

(...)
For I := 1 to N (* където N е броят елементи в масива. *) do
  If A[I].Res > 50 then					  (* Ако точките на участника са над 50... *)
  Writeln(A[I].Ime,' ',A[I].Fam)		  (* ..изписваме името и фамилията му/й *)
(...)

в) да се намери и изведе: най добрият и най-слабият резултат.

(...)
 max := A[1].Res;  (* Max ще приеме стойноста на първия елемент от масива. *)
For I := 2 to N (* където N е броят елементи в масива. *) do   
 If A[I].Res > max then (* Ако числото, записано в клетката е по-голямо от max,... *)
   max := A[I].Res;	   (* то max ще приеме неговата стойност. *)
 Writeln('Най-добър резултат: ',max); (* Ще изведем най-високата стойност. *)
(...)
С най-лошия резултат се справяме по същия начин, само обръщаме знака.

Надявам се написаното да бъде от помощ.

Здравейте. Племенника е малко зле, и ще го оставят на изпит по информатика ако не направи тази домашна: Да се състави задача която: а)Въвежда елементите на масив от 20 цели числа. б)Намира броя на положителните числа. в)Намира сумата на всички числа. г)Намира номерата на отрицателните числа. Ако може до вечерта, че утре завалията има тест.

Здравейте. Племенника е малко зле, и ще го оставят на изпит по информатика ако не направи тази домашна:

Ще се опитам да помогна, но се надявам той, от своя страна, да се опита да го разбере.

Да се състави задача която:

а)Въвежда елементите на масив от 20 цели числа.

б)Намира броя на положителните числа.

в)Намира сумата на всички числа.

г)Намира номерата на отрицателните числа.

Program master1;

  var
	 a : array[1..20] of integer; (* Масив от 20 цели числа *)
	 n : byte;						   (* Тази променлива ще използваме за да преброим положителните числа *)
	 s : integer;						(* А това ни е за сумата на числата *)
	 i :  byte;							(* Брояч *) 

  begin (* Главна програма *)

	 s := 0; (* Зануляваме сумата *)
	 n := 0; (* Зануляваме брояча на положителни числа *)

	For I := 1 to 20 do begin		   (* Повтаряме за двайсетте числа: *)
	  Write('Число: '); Readln(a[i]);  (* Питаме потребителя да въведе число, после го въвеждаме в масива. *)
	  s := s + a[i];   (* Добавяме новото число към общата сума. *)
	 
	   If not odd(a[i]) then (* Ако числото в клетката не е нечетно, ... *)
	   n := n+1;				(* увеличаваме N с едно *)
	Еnd; (* Край на цикъла *)


   Writeln('Масивът съдържа ',n,' положителни числа.'); (* Съобщаваме колко са положителните числа, ... *)
   Writeln('Общата сума на всички числа в него е ',s);	(* Колко общо е сбора, ... *)

	 (* А тук, ако съм разбрал правилно, трябва да изведем номерата на елементите, в които се съхраняват отрицателни числа *)

   Write('Отрицателни са числата с номера ');

   For I := 1 to 20 do 
	 If a[i] < 0 then  (* Ако числото е отрицателно, ... *)
	   Write(' ',i,' ');   (* Ще изведем номера му в масива. Ще отминаваме празни позиции между числата, за да ги отделим едно от друго. *)
   Writeln('.');  (* И ще си завършим изречението с една точка. *)

 readln
end. (* Край на програмата *)

Ще се опитам да помогна, но се надявам той, от своя страна, да се опита да го разбере.

Мерси много човек, той е умен, само му трябва насока. Мерси пак.

Здравейте на всички!Имам курсова по информатика на паскал и ако може малко хелп със задачката ---> click.Благодаря ви предварително

Здравейте на всички!Имам курсова по информатика на паскал и ако може малко хелп със задачката ---> click.Благодаря ви предварително

Кажи кое не ти е ясно, програмата е елементарна и отнема не повече от 15 минути да се напише...

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    25%
    Дарени 252.69 EUR от нужните 1,000.00 EUR

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.