DoctorG Опубликовано 15 февраля, 2009 Жалоба Поделиться Опубликовано 15 февраля, 2009 (изменено) сергей Xerjd Пишите в личку. Могу сделать все обозначеное в ТЗ. Естественно не бесплатно. А так могу посоветовать книгу Проектирование баз данных. СУБД Microsoft Access. Авторы: Н. Н. Гринченко, Е. В. Гусев, Н. П. Макаров Издательство: Горячая Линия - Телеком Год: 2004 Так же посмотри тут. Тут начиная с азов все неплохо описано http://www.lessons-tva.info/edu/e-inf2/m2t4_2.html И естественно МДСН http://msdn.microsoft.com/en-us/office/aa905400.aspx Изменено 15 февраля, 2009 пользователем DoctorG Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 15 февраля, 2009 Жалоба Поделиться Опубликовано 15 февраля, 2009 Students: #include <stdio.h>float s(float a[], int n){int i; float p=0; for(i=0;i<n;i++)p+=a[i]; return p/n;}main(){int i,j,n; float u,a[20][20];printf("\nn? "); scanf("%d",&n);for(i=0;i<n;i++)for(j=0;j<n;j++){printf("\na[%d][%d]? ",i+1,j+1);scanf("%f",&u);a[i][j]=u;}for(i=0;i<n;i++)a[i][i]=s(a[i],n);for(i=0;i<n;i++){printf("\n");for(j=0;j<n;j++)printf("%10.3f",a[i][j]);}getchar();getchar();} Ссылка на комментарий Поделиться на другие сайты Поделиться
7bratoval Опубликовано 16 февраля, 2009 Жалоба Поделиться Опубликовано 16 февраля, 2009 DELPHI двумерный массив, Данн двумерный массив размерностью mxn Пожалуйста помогите новичку (т.е. мне) разобраться с массивами в DELPHI и решить одну задачку: Данн двумерный массив размерностью mxn (вводится с формы пользователем). Вычислить сумму элементов каждого столбца и вывести вместе с массивом на экран. Ссылка на комментарий Поделиться на другие сайты Поделиться
leksev Опубликовано 17 февраля, 2009 Жалоба Поделиться Опубликовано 17 февраля, 2009 Помогите решить задачу на СИ. Нужно написать функцию для определения растояния между точками А и В в n-мерном пространстве по формуле n 2 альфа=корень квадротный E (a-b) i=1 i i где координаты точек А и В.Использовать функцию и найти минимальное из рстояний между точками X,Y,Z. Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 17 февраля, 2009 Жалоба Поделиться Опубликовано 17 февраля, 2009 leksev: #include <stdio.h>#include <math.h>float s(float a[],float b[],int n) {int i;float p=0;for(i=0;i<n;i++)p+=(a[i]-b[i])*(a[i]-b[i]);return sqrt(p);}main(){int i,n; float x[20],y[20],z[20],xy,yz,xz,p;printf("\ndimension? "); scanf("%d",&n);printf("\nX? "); for(i=0;i<n;i++)scanf("%f",&x[i]);printf("\nY? "); for(i=0;i<n;i++)scanf("%f",&y[i]);printf("\nZ? "); for(i=0;i<n;i++)scanf("%f",&z[i]);xy=s(x,y,n); yz=s(y,z,n); xz=s(x,z,n); p=xy<yz?xy:yz; p=p<xz?p:xz;printf("\ns_min= %-10.3f\n",p); getchar();getchar();} При вводе числа разделяются пробелами. Ссылка на комментарий Поделиться на другие сайты Поделиться
Students Опубликовано 18 февраля, 2009 Жалоба Поделиться Опубликовано 18 февраля, 2009 мне надо организовать функцию ввод\вывода матрицы например делаю так float InArrr(float a[][], int n){int i,j,u;for(i=0;i<n; i++)for(j=0;j<n; j++){printf("\nВведите элемент a[%d][%d]", i+1, j+1);scanf("%f",&u);a[i][j]=u;}return a[i][j];} вызываю функцию так ....a[i][j]=InArrr(a[i][j],n);... но это неправельно ((( помогите пожалуйста Ссылка на комментарий Поделиться на другие сайты Поделиться
westcoastkilla Опубликовано 18 февраля, 2009 Жалоба Поделиться Опубликовано 18 февраля, 2009 Из главной формы предусмотреть переходы на две подчиненные формы и окончание решения задачи. На первой вспомогательной форме реализовать автоматическое решение задачи с помощью операторов условного перехода, на второй – выбор формул с помощью селекторных кнопок выбора. Окончание работы с каждой подчиненной формой должно завершаться выходом в главную форму. Народ вот есть задание я просто немогу понять что от меня требуется. Можете расписать типа создай то то и то то. Ну я имею ввиду чисто визуально как это оформить ? Я чёт насчёт 2 формы непойму ну выберу я селекторными кнопками формулу и что дальше ? Мож кто сообразит в чём смысл задания Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 18 февраля, 2009 Жалоба Поделиться Опубликовано 18 февраля, 2009 (изменено) Students: Например: #include <stdio.h>InArr(float a[],int n,int m){int i,j; for(i=0;i<n;i++)for(j=0;j<n;j++) {printf("a[%d][%d] ?",i+1,j+1);scanf("%f",&a[i*m+j]);}}OutArr(float a[],int n,int m){int i,j; for(i=0;i<n;i++)for(j=0;j<n;j++) printf("\na[%d][%d]=%10.3f",i+1,j+1,a[i*m+j]);}main(){float p[10][10]; int n; printf("\nn ?"); scanf("%d",&n); InArr(p,n,10); OutArr(p,n,10); getchar(); getchar();} Изменено 18 февраля, 2009 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
rutra Опубликовано 22 февраля, 2009 Жалоба Поделиться Опубликовано 22 февраля, 2009 Помогите составить блок-схемы 1) Дано: список фирм и их уставной фонд. Найти сумму фондов, попадающих в интервал от В1 до В2. uses crt; const nmax=100;{максимальное количество фирм} type TFirma=record {тип запись с полями по условию} nam:string[20];{название} usf:word;{уставной фонд} end; var sp:array[1..nmax] of TFirma;{массив записей, список фирм с фонда-ми} n,b1,b2:word;{количество, нижний и верхний размеры фондов} i:integer; {счетчик цикла} sum:longint;{сумма} k:byte;{фиксатор} begin clrscr; repeat write('Kolichestvo firm n='); readln(n); until (n>0)and(n<=nmax);{проверяем правильность ввода} repeat write('b1=');readln(b1); write('b2=');readln(b2); until (b1>0)and(b2>b1);{правильность ввода} writeln('Vvedite dannye o ',n,' firmah:'); for i:=1 to n do {наполняем список данными} begin writeln('Firma ',i); write('Nazvanie: ');readln(sp.nam); write('Ustavnoj fond: ');readln(sp.usf); end; clrscr; {очищаем экран} writeln('Spisok firm s ustavnym fondom >',b1,' i <',b2); sum:=0;k:=0; for i:=1 to n do if (sp.usf>b1)and(sp.usf<b2)then{если фонд попадает в диапазон} begin writeln(sp.nam,' ',sp.usf);{выводим} sum:=sum+sp.usf;{считаем сумму} k:=1;{фиксируем, что есть такие} end; write('Summa=',sum); if k=0 then write('Takih firm net!');{если нет} readln end. Обработка двумерных массивов. Вычислить сумму главной диагонали матрицы B(K,L) Program matrica; uses crt; const k = 3; l=3; type b = array[1..k,1..l] of integer; var a:b; i:integer; j:integer; summa:integer; begin randomize; clrscr; for I:=1 to k do begin for j:= 1 to l do begin a[i,j] := random(10); write(a[i,j]:2,' '); end; writeln; end; writeln; summa:=0; for i:= 1 to k do begin for j:= 1 to l do begin if i = j then inc(summa,a[i,j]); end; writeln; end; write('summa=',' ',summa); readln; end. Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 22 февраля, 2009 Жалоба Поделиться Опубликовано 22 февраля, 2009 (изменено) rutra: Блок-схемы чертили лет пятьдесят назад. С появлением языков программирования они, мало сказать, устарели. Следующим заданием у вас, видимо, будет записать текст программы древнеегипетскими иероглифами :). Советую воспользоваться готовой программой для построения блок-схем по текстам на Паскале (ссылки в теме БлокСхемы и паскаль), погрешности, если будут, можно откорректировать вручную, руководствуясь этим рефератом. P.S. Часть ссылок в той теме уже не работает, вот обновленные: Построитель блок-схем и Редактор блок-схем. Ну и дополнительно на всякий случай мощный построитель блок-схем с многих языков программирования Autoflowchart, правда, на английском и shareware, но особо английский там не нужен, а 50 бесплатных запусков программы вполне достаточно. Изменено 22 февраля, 2009 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
rutra Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 rutra: Блок-схемы чертили лет пятьдесят назад. С появлением языков программирования они, мало сказать, устарели. Следующим заданием у вас, видимо, будет записать текст программы древнеегипетскими иероглифами :bye1:. Советую воспользоваться готовой программой для построения блок-схем по текстам на Паскале (ссылки в теме БлокСхемы и паскаль), погрешности, если будут, можно откорректировать вручную, руководствуясь этим рефератом. P.S. Часть ссылок в той теме уже не работает, вот обновленные: Построитель блок-схем и Редактор блок-схем. Ну и дополнительно на всякий случай мощный построитель блок-схем с многих языков программирования Autoflowchart, правда, на английском и shareware, но особо английский там не нужен, а 50 бесплатных запусков программы вполне достаточно. Понятно, что чертили 100 лет назад. А если препод требует? Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 А если препод требует?Тогда упомянутые программы... Потребует препод иероглифы - и иероглифы будут :bye1: Ссылка на комментарий Поделиться на другие сайты Поделиться
rutra Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 Тогда упомянутые программы... Потребует препод иероглифы - и иероглифы будут :D Слава преподам. :D Кстати та буржуйская программа неплохая. Тока некоторые стандарты в рисовании блок-схем нарушает (например ввод-вывод) Ссылка на комментарий Поделиться на другие сайты Поделиться
rutra Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 Подскажите пожалуйста. Программа правильно составлена? В массиве С(N) удалить максимальные элементы. program UdalMax; {удаление максимального элемента} type Mas = array [1..100] of integer; var C: Mas; N, I, NMax, NMin, Max, Min: integer; begin writeln('удаление максимального и обнуление минимального'); write('Введите число элементов <= 100:'); read(N); writeln('Введите ',N ,' элементов'); for I := 1 to N do read(C); {поиск максимального и его номера} NMax := 1; Max := C[1]; {инициализация} for I := 2 to N do if C > Max then begin Max := C; NMax := I end; N := N - 1; { уменьшение количества элементов} if NMax < N then {т.е максимальный - не последний элемент} for I := NMax to N do C := C[i+1]; {сдвиг элементов} {поиск минимального и его номера} NMin := 1; Min := C[1]; {инициализация} for I := 2 to N do if C < Min then begin Min := C; NMin := I; end; writeln('вывод полученного массива'); for I := 1 to N do write(C:5); writeln; end. Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 Два замечания: а) удаляется только один, первый, максимальный элемент (в массиве могут быть и несколько одинаковых максимальных элементов); б) программа зачем-то находит и минимальный элемент массива, но ничего с ним не делает. В остальном все хорошо. Ссылка на комментарий Поделиться на другие сайты Поделиться
rutra Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 Два замечания: а) удаляется только один, первый, максимальный элемент (в массиве могут быть и несколько одинаковых максимальных элементов); б) программа зачем-то находит и минимальный элемент массива, но ничего с ним не делает. В остальном все хорошо. А как подправить программу? С учетом замечаний по пункту а и б? Ссылка на комментарий Поделиться на другие сайты Поделиться
Mike497 Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 ещё раз здравствуйте уважаемый Тролль!=)) вы частенько выручали меня в прошлом, может и теперь выручите?!:D) вообщем, назрел очередной очень серьёзный вопрос (для меня разумеется) по задаче на файлы: Дан текстовый файл f, компоненты которого являются натуральными числами. Количество чисел в файле кратно 4. Первые два числа из каждых четырех задают координаты левого верхнего угла прямоугольника, следующие два числа - координаты его правого нижнего угла. Вычислить у какого прямоугольника площадь больше. заранее благодарен за помощь=)) чуть не забыл... это как всегда паскаль=)) Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 rutra: program UdalMax; {удаление максимальных элементов массива}var C:array [1..100] of integer; N,M,I,J,Max:integer;beginwriteln('удаление максимальных элементов массива');write('Введите число элементов <= 100:'); read(N);writeln('Введите ',N ,' элементов'); for I:=1 to N do read(C[i]);Max:=C[1]; for I:=2 to N do if C[i]>Max then Max:=C[i]; {поиск максимума}M:=N; for I:=N downto 1 do if Max=C[i] then begin M:=M-1; for J:=I to M do C[J]:=C[J+1] end; {сдвиг элементов}writeln('вывод массива'); for I:=1 to M do write(C[i]:5); writeln;end. Ссылка на комментарий Поделиться на другие сайты Поделиться
rutra Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 rutra: program UdalMax; {удаление максимальных элементов массива}var C:array [1..100] of integer; N,M,I,J,Max:integer;beginwriteln('удаление максимальных элементов массива');write('Введите число элементов <= 100:'); read(N);writeln('Введите ',N ,' элементов'); for I:=1 to N do read(C[i]);Max:=C[1]; for I:=2 to N do if C[i]>Max then Max:=C[i]; {поиск максимума}M:=N; for I:=N downto 1 do if Max=C[i] then begin M:=M-1; for J:=I to M do C[J]:=C[J+1] end; {сдвиг элементов}writeln('вывод массива'); for I:=1 to M do write(C[i]:5); writeln;end. Все так просто и коротко. Спасибо большое. Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 23 февраля, 2009 Жалоба Поделиться Опубликовано 23 февраля, 2009 (изменено) Mike497: Дан текстовый файл f, компоненты которого являются натуральными числами. Количество чисел в файле кратно 4. Первые два числа из каждых четырех задают координаты левого верхнего угла прямоугольника, следующие два числа - координаты его правого нижнего угла. Вычислить у какого прямоугольника площадь больше. var f:text; a:string; x1,y1,x2,y2,x1m,y1m,x2m,y2m,s,sm:word;beginwrite('Name of the file? ',a); readln(a); assign(f,a); reset(f);x1m:=0; y1m:=0; x2m:=0; y2m:=0; sm:=0;while not eof(f) do beginread(f,x1,y1,x2,y2); s:=(x2-x1)*(y1-y2);if s>sm then begin x1m:=x1; y1m:=y1; x2m:=x2; y2m:=y2; sm:=s; end end; writeln('S_max:',sm,' (x1=',x1m,', y1=',y1m,', x2=',x2m,', y1=',y2m,')');close (f); readln;end. Изменено 23 февраля, 2009 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
rutra Опубликовано 24 февраля, 2009 Жалоба Поделиться Опубликовано 24 февраля, 2009 Помогите пожалуйста еще с одной последней задачей. Как бы все просто , но здесь надо организовать неявный циклический вычислительный процесс для функций: 16*a-SQR(x)/(a+b) , если x>=0 N= 1/a+2*x*b, если x<0 При x=y*y-8 Как я понимаю неявный цикл - это цикл с условием (без счетчика) Ссылка на комментарий Поделиться на другие сайты Поделиться
Mike497 Опубликовано 24 февраля, 2009 Жалоба Поделиться Опубликовано 24 февраля, 2009 В очередной раз спасибо за решение, Тролль;)) Ссылка на комментарий Поделиться на другие сайты Поделиться
DoctorG Опубликовано 24 февраля, 2009 Жалоба Поделиться Опубликовано 24 февраля, 2009 rutra раз это это цикл с условием (без счетчика) то это цикл типа do while к примеру условие можно задать так while x>=0 do { цикл с предусловием }оператор 1;оператор 2;.................оператор n; writeln('Ожидание'); Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 24 февраля, 2009 Жалоба Поделиться Опубликовано 24 февраля, 2009 спасибо за решение, Тролль:)) :) rutra: Буковки какие-то... :) Совершенно неясно, что за формула считается, что надо вводить, а что перебирать. И что такое SQR - в Паскале это функция возведения в квадрат, а в обычной записи так часто обозначают квадратный корень. Неявный цикл можно написать белыми буквами на белом фоне :) Вообще-то цикл с условием (while ... do ... или repeat ... until ...) всегда считался явным, а неявным обычно считают вручную организованный цикл с goto. Но без понятного задания формулы и условий писать тут в любом случае нечего. Ссылка на комментарий Поделиться на другие сайты Поделиться
rutra Опубликовано 24 февраля, 2009 Жалоба Поделиться Опубликовано 24 февраля, 2009 :) rutra: Буковки какие-то... :) Совершенно неясно, что за формула считается, что надо вводить, а что перебирать. И что такое SQR - в Паскале это функция возведения в квадрат, а в обычной записи так часто обозначают квадратный корень. Неявный цикл можно написать белыми буквами на белом фоне :) Вообще-то цикл с условием (while ... do ... или repeat ... until ...) всегда считался явным, а неявным обычно считают вручную организованный цикл с goto. Но без понятного задания формулы и условий писать тут в любом случае нечего. Ну не знай. В методичке препода написано, что неявный цикл - это цикл с условием. Да и в Инете полазил, в основном тоже самое. sqrt(x) - да корень, здесь я ошибся. Здесь надо читать так, что если x>=0, то N=16*a-sqrt(x)/(a+b) и если x<0, то N=1/a+2*x*b. При x=y*y-8 Неужели нет вариантов? Помогите. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти