61

(31 відповідей, залишених у C++)

А я б мабудь так зробив би:

    void kvadro(int* a, int n)
    {
        for(int k = 0; k < n; k++) cout<<(n[k]*=(n[k]<0)?n[k]:1);
    }

Та виклик:

kvadro(&n,10);

62

(15 відповідей, залишених у Pascal/Delphi)

Я б на твоєму місці другу форму віпхав би з списку тих, що створюються автоматично (те, що формує Application.CreateForm(TForm2, Form2); у головному модулі).
А в OnShow Першої приписав би так:

procedure TForm1.FormShow(Sender: TObject);
begin
  with TForm2.Create(nil) do begin
    Show;
    BringToFront;//Тут я не впевен, можливо доведеться дещо інще робити щоб показати поверх
  end;
end; 

Друга форма же хай має таке:

procedure TForm2.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
     CloseAction:=caFree;
end; 

63

(15 відповідей, залишених у Pascal/Delphi)

Хто підкаже, яку подію краще вибрати для першої процедури ?

А коли саме треба показувати другу форму? коли головна форма з'являється на єкрані, чи коли на неї у процесі праці перемикае користувач фокус?

для закриття програми, що буде краще Close чи Halt

Halt це саме як викинути за допомогою Диспетчера завдань. Ну майже так... Тож ця команда для віконних ПЗ - скоріш варварство. Close саме найдійне буде, якщо у тебе не крутяться закляклі треади.

64

(31 відповідей, залишених у C++)

Намагався увімкнути пошаговку? Щоб провести трассування кода.

65

(31 відповідей, залишених у C++)

компілятор чомусь не реагує

В якому розумінні не реагує? Видае помилку? Чи просто та функція не виконується?

чи вже є готовий транслятор?

Інтерпретатор. Все (майже, бо розвиток все ще триває наразі виробничих необхідностей) тут: http://www.programmersforum.ru/showthread.php?t=277042
Транслятор був тут: http://procoder.info/index.php/entry/ko … niya-ch-1/ (це початкова стаття). Доречі там й пояснення чому саме лиспоподібність.
Але я вирішив що інтерпретуєма мова зручнише. І не прогадав.

А що не так з лапками?

У строках іноди бувають як " так й '. Тому я доправив ще один тип оквочування строк - зворотню лапку.

67

(2 відповідей, залишених у Pascal/Delphi)

Обчислити периметр і площу прямокутного трикутника за заданими гіпотенузою і катетом.

function Perimiter(gip,cat:double):Double;
begin
 Perimiter:=gip+cat+sqrt(sqr(qip)-sqr(cat));
end;
function Squaare(gip,cat:double):Double;
begin
 Perimiter:=cat*sqrt(sqr(qip)-sqr(cat))/2;
end;

begin
 Write('Перімітер:',Perimiter(5,2),' Площа:',Squaare(5,2)); readln;
end.

Це якщо не помиляюсь.
Інщі завдання незрозумів.

quez написав:

Хіба ви придумали лісп?

А хіба я говорив, що це саме лісп?

На чому це?

На розробленой мною мові

як би виглядав аналогічний проект на вашій улюбленій мові?

(print
    (if (param name)    ("Hello, " + (param name) + "!<br>"))
    `<form method=GET>
    Your name: <input name=name> <input type=submit>
    </form>`
)

не важлива "якість", головне "кількість"

Якість та кількість повинна буди пропорційной. Інакше портали перетворюються або на ганделик, або на Закрите Товариство Задротів (пардоніссімус за ругалку).

72

(9 відповідей, залишених у C++)

чому не передавати одновимірний?

Я не кажу, що це єдиний варінт :)
Я лише вангую, що топікстартер до параметрів не допетре.

Проголосував за "Змінити", та видати йому ременяку по дупі.

74

(9 відповідей, залишених у C++)

А код ви і забули викласти...

Він й на їншому форумі код не показав. йому треба щоб за нього написали все все все.

ніяк не можу вирішити задачу

Тож дам підказку:

const int n=5,m=30;
double a[n][m];
int i,j;
/* Визначити порядкові номери учнів у кожному класі, які
   мають найкращі та найгірші підсумкові бали з математики */
void Garusey(int predmet) {
    int ibest = 0, ilast = 0;
    for(i = 0; i < m; i++) {
        ibest = (a[predmet][i] > a[predmet][ibest]) ? i : ibest;
        ilast = (a[predmet][i] < a[predmet][ilast]) ? i : ilast;
    }
    cout << "Кращій :" << ibest << " Гірший:" << ilast;
}

Функція знаходить альфу та омегу у предметі за номером, переданим до функції.
Зможешь самотужки її примінити, написати введення та вивід массиву?

75

(11 відповідей, залишених у Pascal/Delphi)

Хіба ж Єнтери у Едітах фіксуються?
Щодо інших символов та взагали, можу запропонувати наступне:

procedure TForm1.Button1Click(Sender: TObject);
begin
 ShowMessage(format('Введено єнтерів: %d введено собачек: %d',[
   Length(Edit1.Text)-Length(StringReplace(Edit1.Text,#13,'',[rfReplaceAll]))
  ,Length(Edit1.Text)-Length(StringReplace(Edit1.Text,'@','',[rfReplaceAll]))
 ]));
end; 

Але з клавішей Ентер тобі доведеться працювати у другому компоненті.

Жодної, бо ми користуємось флешками )

так числа не послідовними будуть

Це скетч, написаний без перевірки.
Напиши краще.

int n=2,i,j; n=n*n;
int **a=new int*[n];
for(i=0;i<n;i++){
 a[i]=new int[n];
 for(j=0;j<n;j++) a[i][j]=i*j
}
cout<<"Горизонт";for(i=0;i<n;i++){ for(j=0;j<n;j++) cout<<a[i][j]<<'\t';cout<<endl;}

cout<<"Вертикаль";for(i=0;i<n;i++){ for(j=0;j<n;j++) cout<<a[j][i]<<'\t';cout<<endl;}

cout<<"\"; for(i=0;i<n;i++){ for(j=i+1;j<n;j++) cout<<a[j][j]<<'\t';cout<<endl;}
 for(i=1;i<n;i++){ for(j=0;j<i;j++) cout<<a[j][j]<<'\t';cout<<endl;}

cout<<"/"; for(i=1;i<n;i++){ for(j=n;j>n-i;j--) cout<<a[j][j]<<'\t';cout<<endl;}
 for(i=0;i<n;i++){ for(j=i;j<n-i;j++) cout<<a[j][j]<<'\t';cout<<endl;}

...

Таке (скетч) підійде?

79

(13 відповідей, залишених у *nix)

Ну так вставь диск з Убунтой, й виконай інсталляцію... Или якісь перепони є?

80

(1 відповідей, залишених у Pascal/Delphi)

var c:array[1..3,1..5] of integer; a:array[1..15] of integer; b:array[1..6,1..6] of integer;
 i,j,max,avg,avgc,d:integer;
begin
{Дано масив C(3,5). Всі елементи масиву розділити на найбільший, відмінний від нуля, елемент}
 for i:=1 to 3 do for j:=1 to 5 do begin readln(c[i,j]); if (c[i,j]>max) and (c[i,j]<>0) then max:=c[i,j]; end;
  for i:=1 to 3 do for j:=1 to 5 do begin c[i,j]:=c[i,j]/max; writeln(c[i,j]);end;

{Дано масив А(15). Знайти середнє арифметичне від`ємних елементів масиву.}
for i:=1 to 15 do begin readln(a[i]); if (a[i]<0) then avg:=avg+a[i]; inc(avgc); end; writeln(avg/avgc);

{Дано масив B(6,6). Обчислити добуток відмінних від нуля елементів}
for i:=1 to 6 do for j:=1 to 6 do begin readln(b[i,j]); if (b[i,j]<>0) then d:=d*b[i,j]; end; writeln(d);

readln;
end.

Підійде? Недоліки у перевірці на нуль сам приклеєш.