Мегаобучалка Главная | О нас | Обратная связь


НА ДЕЛФИ(показывает ошибку)



2016-09-16 593 Обсуждений (0)
НА ДЕЛФИ(показывает ошибку) 0.00 из 5.00 0 оценок




Квалификационный курс

Индивидуальные задания

По компьютерным дисциплинам

Информатика

1. Дайте ячейкам А20, В20 и С20 имена u, v, w. В самих ячейках содержатся числа. Введите в ячейки А21, А22 и т.д. логические формулы, которые возвращают значение ИСТИНА тогда и только тогда, когда

а) каждое из чисел u, v, w является положительным;

б) хотя бы одно из чисел u, v, w является положительным.

Использовать табличный процессор.

 

 

2. Торговый агент получает процент от суммы совершенной сделки. Если объем сделки до 3000, то 5%; если объем до 10 000, то 2%; если выше 10 000, то 1.5%. Введите в ячейку А10 текст "Объем сделки", в ячейку А11 — "Размер вознаграждения". В ячейку В10 введите объем сделки, а в В11 — формулу, вычисляющую размер вознаграждения.

Использовать табличный процессор.

 

 

3. Составьте базу данных об оценках своих товарищей, выделив следующие предметы: математика, физика и информатика. Укажите фамилии товарищей, их имена и оценки по этим предметам. Приведите примеры простых и сложносоставных запросов.

Использовать СУБД.

 

 

 

4. Составьте базу данных для простой складской системы. База данных должна содержать следующую информацию: уникальный номер поставщика, фамилию, имя, отчество поставщика, название города местонахождения поставщика, а также уникальный номер детали, ее название, цвет, вес и название города хранения деталей этого типа. Спроектируйте и создайте отчет, содержащий следующую информацию:

Список поставщиков и поставляемых ими деталей (номер, вес и цвет детали),

сгруппированный по номеру детали.

Использовать СУБД.

 

 


5. Составьте систему формул для расчета заработной платы по следу­ющей таблице:

  A B C D
фамилия часы оплата з/плата
Иванов
Петрова
Сидоров
       
    итого:

Использовать текстовый процессор.

 

 

6. Составьте базу данных об успеваемости студентов. База данных должна содержать следующую информацию: фамилию, имя, отчество студента, номер группы, в которой обучается студент, название учебной дисциплины, номер задания, коэффициент сложности, оценку данного студента по данной дисциплине за данное задание от 0 до 1 (как доля сделанной работы).

Создайте и разместите на форме вычисляемое(ые) поле, содержащее следующую информацию:

Количество студентов, не выполнивших задание.

Использовать СУБД.

 

 

 

7. Составить экзаменационную ведомость (по ЕГЭ – сто балльная система оценок) по двум дисциплинам: (математике и физике) на отдельных рабочих листах. Для этого, сначала составьте ведомость по математике, как это приведено в таблице:

  Фамилия Имя Отчество Серия Номер Балл ЕГЭ
Алексеева Ольга Станиславовна
Быков Михаил Алексеевич

Назовите рабочий лист “математика”. Скопируйте текущий лист на другой лист и переименуйте его в лист “физика”. Проставьте соответствующие оценки в ведомости по физике (произвольно). В обоих листах оформите соответствующие шапки. Создайте третий рабочий лист с названием “Сводная ведомость”. В нем составьте таблицу вида:

ФИО Суммарный балл Средний балл
Алексеева О.С. 60,5
Быков М.А.

При этом столбец ФИО должен автоматически формироваться по данным листа математика (применить функции для символьных переменных). Данные других двух столбцов суммарный балл и средний балл должны вычисляться по экзаменационным оценкам с соответствующих листов математика и физика.

Использовать табличный процессор.

 

8. Составить экзаменационную ведомость (по ЕГЭ – сто балльная система оценок) по дисциплине математика.

 

  Фамилия Имя Отчество Балл ЕГЭ Оценка по 5 балльной шкале
Алексеева Ольга Станиславовна хорошо
Иванов Алексей Петрович неудовлетворительно

Столбец “Оценка по 5 балльной шкале” должен формироваться автоматически по данным столбца “Балл ЕГЭматематика по следующей шкале перевода.

Менее 30 баллов неудовлетворительно
От 30 до 50 баллов удовлетворительно
От 51 до 70 баллов хорошо
От 71 балла отлично

Предусмотреть возможность изменения границ шкалы перевода. Для этого границы должны заноситься в определенные ячейки (можно на этом же листе) и ссылки на них должны быть абсолютными.

Использовать табличный процессор.

 

=ЕСЛИ(D9<=$B$2;"неудовлетворительно";ЕСЛИ(И(D9>=$A$3;D9<=$B$3);"удовлетворительно"; ЕСЛИ(И(D9>=$A$4;D9<=$B$4);"хорошо";"отлично")))

 

9. Постройте два вида диаграмм — внедренную на лист с исходными данными и на отдельном листе. Вычислить средний балл по факультету по каждому предмету.

  Информатика Высшая математика Иностранный язык
Гр. 71-01 3,5 3,7 3,5
Гр. 72-01 3,2 3,1 3,2
Гр. 73-01 4,2 4,4
Гр. 74-01 3,7 3,5 3,2
Гр. 75-01 4,1 4,3 3,9
Гр. 76-01 4,5 4,1 4,1
Гр. 77-01 3,9 3,4 3,1
Курс 3,87 3,79 3,57

Использовать табличный процессор.

 

 

 

10. Несколько магазинов фирмы продают то­вары примерно одинакового ассортимента. Сформировать ведомость (ведомости), отражающую количество проданного товара каждого вида, его суммарную стоимость и пр. для каждого магазина за день (неделю, месяц и т. д.).

Использовать табличный процессор.

 

 

11. Решить систему уравнений матричным методом:

Использовать СКМ.

12. Составьте базу данных о сведениях об абонентах АТС. База данных должна содержать следующую информацию: фамилию, имя, отчество владельца телефона, год установки телефона, номер телефона, тип установки телефона ( спаренный или нет), льготу (процентную скидку при оплате).

Спроектируйте и создайте отчет, содержащий следующую информацию:

Список номеров телефонов, сгруппированных по их типу, с указанием ФИО владельца, адреса владельца и года установки, а также количество телефонов данного типа в конце каждой группы.

Использовать СУБД.

 

13. Составьте базу данных о результатах сессии на первом курсе кафедры ВТ. База данных должна содержать следующую информацию: индекс группы, фамилию, имя, отчество студента, пол студента, семейное положение и оценки по пяти экзаменам. Создайте и разместите на форме вычисляемое (ые) поле, содержащее

следующую информацию:

Количество студентов, сдавших сессию на все пятерки.

Использовать СУБД.

 

 

 

14. Составьте базу данных «Журнал регистрации расходов в бухгалтерии». База данных должна содержать следующую информацию: номер пункта, дату перечисления, название организации-получателя, ее адрес и сведения о том, является ли организация коммерческой, а также вид затрат перечисления и общую сумму перечисления.

Спроектируйте и создайте отчет, содержащий следующую информацию:

Список организаций-получателей, сгруппированных по их типу, с указанием названия фирмы, вида затрат перечисления, суммы перечисления и даты перечисления, а также количество перечислений в организации данного типа в конце каждой группы.

Использовать СУБД.

 

Задание 14 не открылось (не распознанный файл)

 

15. Составьте базу данных «Учет лекарств в аптеке». База данных должна содержать следующую информацию: наименование лекарства, стоимость одной единицы, количество единиц, дату изготовления, срок годности, а также название фабрики, где производится данное лекарство, ее адрес.

Используя исходную БД, спроектируйте экранную форму (приложение), включив в нее все поля и оформив некоторые из них следующим образом:

Дату изготовления необходимо вывести в формате, например: 15 Апрель 1998 г.

Использовать СУБД.

 

Задание 15 не открылось (не распознанный файл)

 

 

16. . Составьте базу данных «Учет поступления больных». База данных должна содержать следующую информацию: фамилию, имя, отчество больного, его пол, дату рождения, дата поступления, начальный диагноз, степень тяжести состояния больного, номер палаты, куда был помещен больной, и фамилию, имя, отчество лечащего врача.

Создайте и разместите на форме вычисляемое(ые) поле, содержащее следующую информацию:

Количество больных, поступивших в тяжелом состоянии.

Использовать СУБД.

 

 

 

17. Имеются обобщённые данные о работе фирмы за несколько лет. Они приведены в условных единицах в таблице:

Год Приход Расход

Построить диаграмму прихода и расхода в зависимости от года. Затем рядом для исходных данных постройте линейный график в той же зависимости. Для графика из примера поменяйте форму и цвет маркеров. Постройте круговую диаграмму «Год-Расход».

Использовать табличный процессор.

 

18. Найти пределы функций. Вычисления сопровождать построением графиков функций:

Использовать СКМ.

19. Пусть завод должен изготовить 500 изделий трех типов. Изделий 1-го типа нужно изготовить не менее 90 шт., изделий 2-го типа – не менее 80 шт., изделий 3-го типа – не менее 70. На изделия уходит 20, 18 и 10 кг. пластмассы при её общем запасе 8000 кг, и 5, 7, и 12 кг металла при его общем запасе 5000 кг.

Сколько изделий каждого типа нужно выпустить для получения максимального объема выпуска в денежном выражении, если цена изделий составляет 20, 15 и 13 рублей?

Использовать СКМ.

20.Решить систему уравнений с помощью встроенной функции:

Использовать СКМ.

 

 


Программирование

Задача 1.

Вычислить и вывести на экран в виде таблицы значении функции, заданной графически, на интервале от xнач до xкон с шагом Ах. Интервал и шаг задать таким образом, чтобы проверить для нее ветви программы. Таблицуснабдить заголовком и шапкой.

нет

Задача 2.

В одномерном массиве, состоящем из целочисленных элементов, вычислить:

· сумму отрицательных элементов массива;

· произведение элементов массива, расположенных между первым максимальным и последним минимальным элементами.

НА ДЕЛФИ


unit Unit3;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids;

type

TForm3 = class(TForm)

StringGrid1: TStringGrid;

Button1: TButton;

Memo1: TMemo;

Label1: TLabel;

Label2: TLabel;

Button2: TButton;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

{$R *.dfm}

//в процессе заполнения массива нельзя ставить первым максимальным

//или минимальный элемент, иначе программа будет работать неверно!!!!

procedure TForm3.Button1Click(Sender: TObject);

const

s = 5;

var

a: array[1..s] of integer;

p,i,i1,i2,min,max: integer;

begin

for i:=1 to s do

a[i]:= StrToInt(StringGrid1.Cells[i-1, 0]);

i1:=0;

max:=a[1];

for i:= 1 to s do begin

if (a[i]>max) then begin max:=a[i]; i1:=i; if i1>0 then break; end;

end;

Memo1.Lines.Add('Первы max элемент='+FloatToStrF(i1,ffFixed,2,0));

i2:=0;

min:=a[1];

for i:= 1 to s do begin

if (a[i]<min) then begin min:=a[i]; i2:=i; end;

end;

Memo1.Lines.Add('Последний min элемент='+FloatToStrF(i2,ffFixed,2,0));

p:=1;

for i:= i1+1 to i2-1 do begin

p:=p*a[i];

end;

Memo1.Lines.Add('Произведение p='+FloatToStrF(p,ffFixed,2,0));

end;

procedure TForm3.Button2Click(Sender: TObject);

const

s = 5;

var

a: array[1..s] of integer;

i,sum: integer;

begin

for i:=1 to s do

a[i]:= StrToInt(StringGrid1.Cells[i-1, 0]);

sum:=0;

for i:=1 to s do

if a[i]<0 then

sum:=sum+a[i];

Memo1.Lines.Add('сумма sum='+FloatToStrF(sum,ffFixed,2,0));

 

end;

procedure TForm3.FormCreate(Sender: TObject);

begin

memo1.Clear;

end; end.



 

НА С++


//----------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//-----------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner){}

//-----------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)

{Form1->Close();}

//---------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{const s=5;

int a[s];

int i,sum;

for (i=1;i<=s;i++)

{a[i]=StrToInt(StringGrid1->Cells[i-1][0]);}

sum=0;

for (i=1; i<=s; i++)

{if (a[i]<0){

sum=sum+a[i];}}

Memo1->Lines->Add("Сумма отрицательных эл-тов="+IntToStr(sum));}

//---------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{const s=5;

int a[s];

int p,i,i1,i2,min,max;

for (i=1; i<=s;i++) {

a[i]= StrToInt(StringGrid1->Cells[i-1][0]);}

i1=0;

max=a[1];

for (i= 1; i<=s;i++) {

if (a[i]>max)

{ max=a[i];

i1=i;

if (i1>0) break; } }

Memo1->Lines->Add("Первый max элемент="+IntToStr(i1));

i2=0;

min=a[1];

for (i=1; i<=s;i++) {

if (a[i]<min)

{ min=a[i];

i2=i; } }

Memo1->Lines->Add("Последний min элемент="+IntToStr(i2));

p=1;

for (i=i1+1; i<=i2-1; i++)

{ p=p*a[i]; }

Memo1->Lines->Add("Произведение p="+IntToStr(p));

}




Задача 3.

Вычислить и вывести на экран в виде таблицы значении функции, заданной графически, на интервале от xнач до xкон с шагом Ах. Интервал и шаг задать таким образом, чтобы проверить для нее ветви программы. Таблицуснабдить заголовком и шапкой.

 

НА ДЕЛФИ


unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

type

TForm1 = class(TForm)

Button1: TButton;

Memo1: TMemo;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

const r=3;

var x,y:real;

begin

x:=-10;

while x<=8 do

begin

if (x>=-10) and(x<=-8) then y:=-3;

if (x>-8)and (x<=-3) then y:=x/2+1.5;

if (x>-3) and (x<=3) then y:=-sqrt(r*r-x*x);

if (x>3)and (x<=5) then y:=x-3;

if (x>5) and(x<=8) then y:=3;

memo1.Lines.Add('________________');

memo1.Lines.Add('x='+floattostrf(x,ffFixed,2,2)+' | '+'y='+floattostrf(y,ffFixed,2,2)+' | ');

x:=x+0.1;

end;end; end.



 

НА С++


//--------------------------------------------------

#include <vcl.h>

# include <math.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{}

//----------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{Form1->Close();}

//----------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{const r=3;

float x,y;

{x=-10;

while (x<=8)

{if ((x>=-10)&&(x<=-8)) y=-3;

if ((x>-8)&& (x<=-3)) y=x/2+1.5;

if ((x>-3) && (x<=3)) y=-sqrt(r*r-x*x);

if ((x>3)&& (x<=5)) y=x-3;

if ((x>5) &&(x<=8)) y=3;

Memo1->Lines->Add("________________");

Memo1->Lines->Add("x="+FloatToStrF(x,ffFixed,2,2)+" | "+"y="+FloatToStrF(y,ffFixed,2,2)+" | ");

x=x+0.5;

}}}



Задача 4.

В одномерном массиве, состоящем из целочисленных элементов, вычислить:

· сумму положительных элементов массива;

· произведение элементов массива, расположенных между первым максимальным по модулю и последним минимальным по модулю элементами.

 

НА ДЕЛФИ (показывает ошибку)


unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids;

type

TForm1 = class(TForm)

Label1: TLabel;

StringGrid1: TStringGrid;

Button1: TButton;

Button2: TButton;

Memo1: TMemo;

Button3: TButton;

procedure Button3Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button3Click(Sender: TObject);

begin

Form1.Close;

end;

procedure TForm1.Button1Click(Sender: TObject);

const s=5;

var a:array[1..s] of integer;

i,sum:integer;

begin

for i:=1 to s do

a[i]:=StrtoInt(StringGrid1.Cells[i-1,0]);

sum:=0;

for i:=1 to s do

begin

if (a[i]>0) then

sum:=sum+a[i];

end;

Memo1.Lines.Add('Сумма положительных элементов массива='+IntToStr(sum));

end;

procedure TForm1.Button2Click(Sender: TObject);

const s = 5;

var a:array[1..s] of integer;

i,imin,imax,p,min,max:integer;

begin

Memo1.Clear;

for i:=1 to s do

a[i]:=StrtoInt(StringGrid1.Cells[i-1,0]);

max:=abs(a[1]);

imax:=1;

for i:=1 to s do

begin

if (abs(a[i])>max) then

begin

max:=abs(a[i]);

imax:=i;

end;

end;

Memo1.Lines.Add('Максимальный элемент='+''+InttoStr(max)+' '+InttoStr(imax));

min:=abs(a[1]);

imin:=1;

for i:=1 to s do

begin

if (abs(a[i])<=min) then

begin

min:=abs(a[i]);

imin:=i;

end;

end;

Memo1.Lines.Add('Минимальный элемент '+' '+InttoStr(min)+' '+InttoStr(imin));

p:=1;

for i:=imax+1 to imin-1 do

p:=p*a[i];

Memo1.Lines.Add('Произведение='+Inttostr(p));

end;

end.


 

НА С++


//---------------------------------------------------------------------------

#include <vcl.h>

#include <math.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)

{

Form1->Close();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

const s=5;

int a[s];

int i,sum;

for (i=1;i<=s;i++)

{

a[i]=StrToInt(StringGrid1->Cells[i-1][0]);

}

sum=0;

for (i=1; i<=s; i++)

{

if (a[i]>0)

{

sum=sum+a[i];

}}

Memo1->Lines->Add("Сумма положительных эл-тов="+IntToStr(sum));

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

const s=5;

int a[s];

int i,min,max,imin,imax,p;

for (i=1;i<=s;i++)

{

a[i]=StrToInt(StringGrid1->Cells[i-1][0]);

}

max=abs(a[1]);

imax=1;

for (i=1;i<=s;i++)

{

if (abs(a[i])>max)

{

max=abs(a[i]);

imax=i;

}}

Memo1->Lines->Add("Максимальный элемент="+IntToStr(max));

Memo1->Lines->Add("номер="+IntToStr(imax));

min=abs(a[1]);

imin=1;

for (i=1;i<=s;i++)

{

if (abs(a[i])<=min)

{

min=abs(a[i]);

imin=i;

}}

Memo1->Lines->Add("минимиальный элемент="+IntToStr(min));

Memo1->Lines->Add("номер="+IntToStr(imin));

p=1;

for (i=imax+1; i<imin; i++)

{

p=p*a[i];

}

Memo1->Lines->Add("произведение="+IntToStr(p));

}

//---------------------------------------------------------------------------


 


Задача 5.

Вычислить и вывести на экран в виде таблицы значении функции, заданной графически, на интервале от xнач до xкон с шагом Ах. Интервал и шаг задать таким образом, чтобы проверить для нее ветви программы. Таблицуснабдить заголовком и шапкой.

 

НА ДЕЛФИ


unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

type

TForm1 = class(TForm)

Button1: TButton;

Memo1: TMemo;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

const r=2;

var x,y:real;

begin

x:=-9;

y:=0;

while x<=5 do

begin

if (x>=-9) and(x<=-5) then y:=2-sqrt(r*r-(x+7)*(x+7));

if (x>-5)and (x<=-4) then y:=2;

if (x>-4) and (x<=0) then y:=-x/2;

if (x>0) and (x<=3.14) then y:=sin(x);;

if (x>3.14) then y:=x-3.14;

memo1.Lines.Add('________________');

memo1.Lines.Add('x='+floattostrf(x,ffFixed,2,2)+' | '+'y='+floattostrf(y,ffFixed,2,2)+' | ');

x:=x+0.1;

end;

end;

end.


 

НА С++


//---------------------------------------------------------------

#include <vcl.h>

# include <math.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner){}

//---------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{Form1->Close();}

//---------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{const r=2;

float x,y;

x=-9;

y=0;

while (x<=5){

if ((x>=-9) && (x<=-5)) y=2-sqrt(r*r-(x+7)*(x+7));

if ((x>-5)&& (x<=-4)) y=2;

if ((x>-4) && (x<=0)) y=-x/2;

if ((x>0) && (x<=3.14)) y=sin(x);;

if (x>3.14) y=x-3.14;

Memo1->Lines->Add("________________");

Memo1->Lines->Add("x="+FloatToStrF(x,ffFixed,2,2)+" | "+"y="+FloatToStrF(y,ffFixed,2,2)+" | ");

x=x+0.1;

} }

//---------------------------------------------------------------------------


Задача 6.

В одномерном массиве, состоящем из целочисленных элементов, вычислить:

· произведение элементов массива с четными номерами;

· сумму элементов массива, расположенных между первым и последним нулевыми элементами.

НА ДЕЛФИ(показывает ошибку)


unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids;

type

TForm1 = class(TForm)

Label1: TLabel;

StringGrid1: TStringGrid;

Memo1: TMemo;

Button1: TButton;

Button2: TButton;

Button3: TButton;

procedure Button3Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button3Click(Sender: TObject);

begin

Form1.Close;

end;

procedure TForm1.Button1Click(Sender: TObject);

const s=5;

var a:array[1..s] of integer;

i,p:integer;

begin

for i:=1 to s do

begin

a[i]:=StrToInt(StringGrid1.Cells[i-1,0]);

end;

p:=1;

for i:=1 to s do

begin

if (i mod 2=0) then

p:=p*a[i];

end;

Memo1.Lines.Add('Произведение четных элементов массива='+IntTostr(p));

end;

procedure TForm1.Button2Click(Sender: TObject);

const s=5;

var a:array[1..s] of integer;

i,sum,ifirst,ilast:integer;

begin

for i:=1 to s do

begin

a[i]:=StrToInt(StringGrid1.Cells[i-1,0]);

end;

ifirst:=0;

ilast:=0;

for i:=1 to s do

begin

if (a[i]=0) then

begin

ifirst:=i;

break;

end;

end;

for i:=1 to s do

begin

if (a[i]=0) then

ilast:=i;

end;

sum:=0;

for i:=ifirst+1 to ilast-1 do

begin

sum:=sum+a[i];

end;

Memo1.Lines.Add('Сумма элементов между первым и последним нулевыми элементами='+IntTostr(sum));

Memo1.Lines.Add('Номер первого нулевого элемента ='+IntTostr(ifirst));

Memo1.Lines.Add(' Номер последнего нулевого элемента ='+IntTostr(ilast));

end;

end.


 


НА С++


//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)

{Form1->Close();}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{const s=5;

int a[s];

int i,p;

for (i=1;i<=s;i++){

a[i]=StrToInt(StringGrid1->Cells[i-1][0]);}

p=1;

for (i=1; i<=s; i++)

{if (i%2==0)

p=p*a[i];}

Memo1->Lines->Add("Произведение элементов с четными номерами="+IntToStr(p));}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{const s=5;

int a[s];

int i,ifirst,ilast,sum;

for (i=1; i<=s; i++)

{a[i]=StrToInt(StringGrid1->Cells[i-1][0]);}

for (i=1; i<=s;i++)

{if (a[i]==0){

ifirst=i;

break;

}}

for (i=1; i<=s;i++)

{if (a[i]==0)

ilast=i;}

sum=0;

for (i=ifirst+1; i<ilast; i++)

{ sum=sum+a[i]; }

Memo1->Lines->Add("Сумма эл-тов между 1ым и последним нулевыми элементами="+IntToStr(sum));

Memo1->Lines->Add("Номер первого нулевого элемента="+IntToStr(ifirst));

Memo1->Lines->Add("Номер последнего нулевого элемента="+IntToStr(ilast));}

//---------------------------------------------------------------------------


 


Задача 7.

Вычислить и вывести на экран в виде таблицы значении функции, заданной графически, на интервале от xнач до xкон с шагом Ах. Интервал и шаг задать таким образом, чтобы проверить для нее ветви программы. Таблицуснабдить заголовком и шапкой.

 

НА ДЕЛФИ


unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

type

TForm1 = class(TForm)

Button1: TButton;

Memo1: TMemo;

procedure Button1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

const r=3;

var x,y:real;

begin

x:=-10;

while x<=6 do

begin

if (x>=-10) and(x<=0) then y:=(-x/2)-3;

if (x>0)and (x<=3) then y:=-sqrt(r*r-x*x);

if (x>3) and (x<=6) then y:=sqrt(r*r-(x-6)*(x-6));

memo1.Lines.Add('________________');

memo1.Lines.Add('x='+floattostrf(x,ffFixed,2,2)+' | '+'y='+floattostrf(y,ffFixed,2,2)+' | ');

x:=x+0.5;

end;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

memo1.Clear;

end;

end.


 

НА С++


//---------------------------------------------------------------

#include <vcl.h>

#include <math.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner){}

//---------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{Form1->Close();}

//---------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{const r=3;

float x,y;

x=-10;

while (x<=6){

if ((x>=-10) && (x<=0)) y=(-x/2)-3;

if ((x>0)&& (x<=3)) y=-sqrt(r*r-x*x);

if ((x>3) && (x<=6)) y=sqrt(r*r-(x-6)*(x-6));

Memo1->Lines->Add("________________");

Memo1->Lines->Add("x="+FloatToStrF(x,ffFixed,2,2)+" | "+"y="+FloatToStrF(y,ffFixed,2,2)+" | ");

x=x+0.5;}}

//---------------------------------------------------------------


 

Задача 8.

В одномерном массиве, состоящем из целочисленных элементов, вычислить:

· сумму элементов массива с нечетными номерами;

· сумму элементов массива, расположенных между первым и последним отрицательными элементами.

 

НА ДЕЛФИ(


unit Unit3;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids;

type

TForm3 = class(TForm)

StringGrid1: TStringGrid;

Button1: TButton;

Memo1: TMemo;

Label1: TLabel;

Label2: TLabel;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);

const

s = 5;

var

a: array[1..s] of integer;

p,i,sum,sum2,n: integer;

begin

for i:=1 to s do

a[i]:= StrToInt(StringGrid1.Cells[i-1, 0]);

sum:=0;

for i:= 1 to s do begin

if ((i mod 2)<>0) then begin sum:=sum+a[i];

end;

end;

Memo1.Lines.Add('сумма элементов с нечетными номерами ='+IntToStr(sum));

sum2:=0;

for i:=1 to s do

begin

if (a[i]<0) then

begin

p:=i;

end;

end;

Memo1.Lines.Add('Последний отрицательный элемент='+IntToStr(a[p])); //вывод последнего элемента

for i:=1 to s do

begin

if (a[i]<0) then

begin

n:=i;

break;

end;

end;

Memo1.Lines.Add('Первый отрицательный элемент='+IntToStr(a[n])); //вывод первого элемента

sum2:=0;

for i:=n+1 to p-1 do

begin

sum2:=sum2+a[i];

end;

Memo1.Lines.Add('сумма между первым и последним отрецательным элементом='+IntToStr(sum2));

end;

procedure TForm3.FormCreate(Sender: TObject);

begin

memo1.Clear;

end;

end.


 

НА С++


//---------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{}

//---------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{const s=5;

int p,i,sum,sum2,n;

int a[s];

for (i=1; i<=s;i++)

{a[i]=StrToInt(StringGrid1->Cells[i-1][0]);}

sum=0;

for (i=1; i<=5;i++)

{

if (i%2!=0) {

sum=sum+a[i]; }}

Memo1->Lines->Add("Сумма нечетных элементов="+IntToStr(sum));

sum2=0;

for (i=1; i<=s;i++)

{if (a[i]<0){

p=i;}}

Memo1->Lines->Add("последний отрицательный элемент="+IntToStr(a[p]));

for (i=1; i<=s;i++)

{if (a[i]<0){

n=i;

break;

}}

Memo1->Lines->Add("Первый отрицальный элемент="+IntToStr(a[n]));

for (i=n+1;i<=p-1;i++)

{sum2=sum2+a[i];}

Memo1->Lines->Add("Сумма между элементами="+IntToStr(sum2));}

//---------------------------------------------------------------

 



Задача 9.

Вычислить и вывести на экран в виде таблицы значении функции, заданной графически, на интервале от xнач до xкон с шагом Ах. Интервал и шаг задать таким образом, чтобы проверить для нее ветви программы. Таблицуснабдить заголовком и шапкой.

НА ДЕЛФИ


unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

type

TForm1 = class(TForm)

Memo1: TMemo;

Button1: TButton;

Button2: TButton;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);

begin

Memo1.Clear;

end;

procedure TForm1.Button1Click(Sender: TObject);

const r=2;

var x,y:real;

begin

x:=-4;

y:=0;

Memo1.Lines.Add('----------------------');

Memo1.Lines.Add('| x | y |');

while x<=10 do

begin

if ((x>=-4) and (x<-2)) then y:=x+3;

if ((x>=-2) and (x<4)) then y:=-x/2;

if ((x>=4)and(x<6)) then y:=-2;

if ((x>=6)and(x<=10)) then y:=-2+sqrt(sqr(r)-sqr(x-8));

Memo1.Lines.Add('---------------------');

Memo1.Lines.Add('| '+FloatToStrF(x,ffFixed,1,2)+' | '+FloatToStrF(y,ffFixed,1,2)+' |');

x:=x+0.5;

end;

Memo1.Lines.Add('-----------------------');

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

Form1.Close;

end; end.


 

НА С++


#include <vcl.h>

# include <math.h>

#pragma hdrstop

#include "Unit1.h"

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner){}

//---------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{ Form1->Close();}

void __fastcall TForm1::Button1Click(TObject *Sender)

{const r=2;

float x,y;

x=-4;

y=0;

Memo1->Lines->Add("----------------------");

Memo1->Lines->Add("| x | y |");

while (x<=10)

{ if ((x>=-4) && (x<-2)) y=x+3;

if ((x>=-2) && (x<4)) y=-x/2;

if ((x>=4) && (x<6)) y=-2;

if ((x>=6) &&(x<=10)) y=-2+sqrt((r*r)-((x-8)*(x-8)));

Memo1->Lines->Add("---------------------"); Memo1->Lines->Add("| "+FloatToStrF(x,ffFixed,1,2)+" | "+FloatToStrF(y,ffFixed,1,2)+" |");

x=x+0.5; }

Memo1->Lines->Add("-----------------------");}


Задача 10.

В одномерном массиве, состоящем из целочисленных элементов, вычислить:

· максимальный из отрицательных элементов массива;

· сумму элементов массива, расположенных до последнего положительного элемента.

 

(готовой задачи нет на обоих языках)

 

Задача 11.

Вычислить и вывести на экран в виде таблицы значении функции, заданной графически, на интервале от xнач до xкон с шагом Ах. Интервал и шаг задать таким образом, чтобы проверить для нее ветви программы. Таблицуснабдить заголовком и шапкой.

(готовой задачи нет на обоих языках)

Задача 12.

В одномерном массиве, состоящем из целочисленных элементов, вычислить:

· минимальный элемент массива;

· сумму элементов массива, расположенных между первым и последним положительными элементами.

 

НА ДЕЛФИ(показывает ошибку)


unit Unit3;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids;

type

TForm3 = class(TForm)

StringGrid1: TStringGrid;

Button1: TButton;

Memo1: TMemo;

Label1: TLabel;

Label2: TLabel;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);

const

s = 5;

var

a: array[1..s] of integer;

sum,i,i1,i2,i3,min,pol1,pol2: integer;

begin

for i:=1 to s do

a[i]:= StrToInt(StringGrid1.Cells[i-1, 0]);

i1:=0;

pol1:=a[1];

for i:= 1 to s do begin

if (a[i]>0) then begin pol1:=a[i]; i1:=i; if i1>0 then break; end;

end;

Memo1.Lines.Add('Первый pol1 элемент='+FloatToStrF(i1,ffFixed,2,0));

i2:=0;

pol2:=a[1];

for i:=1 to s do begin

if a[i]>0 then begin pol2:=a[i]; i2:=i; end;

end;

Memo1.Lines.Add('Последний pol2 элемент='+FloatToStrF(i2,ffFixed,2,0));

sum:=0;

for i:= i1+1 to i2-1 do begin

sum:=sum+a[i];

end;

Memo1.Lines.Add('Сумма sum='+FloatToStrF(sum,ffFixed,2,0));

i3:=0;

min:=a[1];

for i:= 1 to s do begin

if (a[i]<min) then begin min:=a[i]; end;

end;

Memo1.Lines.Add('min элемент='+FloatToStrF(min,ffFixed,2,0));

end;

procedure TForm3.FormCreate(Sender: TObject);

begin

memo1.Clear;

end; end.


 

НА С++


//---------------------------------------------------------------

#include <vcl.h>

#include <math.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{ }

//---------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{const s=5;

int a[s];

int sum,i,i1,i2,min,pol1,pol2;

 

for (i=1; i<=s; i++){

a[i]= StrToInt(StringGrid1->Cells[i-1][0]);}

min=a[1];

for (i=1; i<=5; i++)

{ if (a[i]<min



2016-09-16 593 Обсуждений (0)
НА ДЕЛФИ(показывает ошибку) 0.00 из 5.00 0 оценок









Обсуждение в статье: НА ДЕЛФИ(показывает ошибку)

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...
Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (593)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.007 сек.)