Ged 0 Posted November 4, 2014 Share Posted November 4, 2014 Гайс, учусь на хим факе, помогите с лабой кто-нибудь... Задание:Составить программу,отладить ее и произвести на ЭВМ соответ. вычисления P.S. Кэр Лаэда, я вызываю тебя! Link to comment Share on other sites More sharing options...
Pokerface 431 Posted November 4, 2014 Share Posted November 4, 2014 Хим = химический? К сожалению "мой" паскаль на школьном уровне Link to comment Share on other sites More sharing options...
Ged 0 Posted November 4, 2014 Author Share Posted November 4, 2014 Хим = химический? К сожалению "мой" паскаль на школьном уровне да. факультет химических технологий Link to comment Share on other sites More sharing options...
VictorKote 92 Posted November 4, 2014 Share Posted November 4, 2014 Авада Кедавра,прости Господи… Link to comment Share on other sites More sharing options...
Geralt of Rivia 70 Posted November 4, 2014 Share Posted November 4, 2014 Ged, а что за программу-то? Привет. Link to comment Share on other sites More sharing options...
Ged 0 Posted November 4, 2014 Author Share Posted November 4, 2014 Ged, а что за программу-то? Привет. добрый вечер. Блин, фотка ушла с хостинга,ща перезалью Link to comment Share on other sites More sharing options...
Geralt of Rivia 70 Posted November 4, 2014 Share Posted November 4, 2014 Ged, 2 минуты. Link to comment Share on other sites More sharing options...
lion2681 205 Posted November 4, 2014 Share Posted November 4, 2014 Кэр Лаэда, ггг, уже час тут сидиш ждёш его Link to comment Share on other sites More sharing options...
Geralt of Rivia 70 Posted November 4, 2014 Share Posted November 4, 2014 Совсем забыл Паскаль Привык к C. var x, z:array[1..100, 1..100] of real; i, j, m, n, k, l:integer; sum:real; begin writeln('Введите размер матрицы(MxN)'); readln(m, n); writeln('Введите матрицу'); for i := 1 to m do //Ввод for j := 1 to n do read(x[i,j]); writeln('Удаляемый столбец k:'); readln(k); writeln('Номер строки l:'); readln(l); z := x; for i:= 1 to n do for j := k to m-1 do begin z[i,j] := z[i, j+1]; //Смещение столбцов end; dec(n); //Уменьшение кол-ва столбцов for i := 1 to m do begin for j := 1 to n do begin write(z[i,j], ' '); if (i = l) then sum := sum + z[i,j]; // Нахождение суммы end; writeln; end; writeln('Сумма ', l, '-ой строки матрицы Z: ', sum); end. Link to comment Share on other sites More sharing options...
Ged 0 Posted November 4, 2014 Author Share Posted November 4, 2014 Совсем забыл Паскаль Привык к C. var x, z:array[1..100, 1..100] of real; i, j, m, n, k, l:integer; sum:real; begin writeln('Введите размер матрицы(MxN)'); readln(m, n); writeln('Введите матрицу'); for i := 1 to m do //Ввод for j := 1 to n do read(x[i,j]); writeln('Удаляемый столбец k:'); readln(k); writeln('Номер строки l:'); readln(l); z := x; for i:= 1 to n do for j := k to m-1 do begin z[i,j] := z[i, j+1]; //Смещение столбцов end; dec(n); //Уменьшение кол-ва столбцов for i := 1 to m do begin for j := 1 to n do begin write(z[i,j], ' '); if (i = l) then sum := sum + z[i,j]; // Нахождение суммы end; writeln; end; writeln('Сумма ', l, '-ой строки матрицы Z: ', sum); end. спасибо огромное Link to comment Share on other sites More sharing options...
Epikur 6 Posted November 5, 2014 Share Posted November 5, 2014 Лучше бы сам решил Link to comment Share on other sites More sharing options...
Ged 0 Posted November 5, 2014 Author Share Posted November 5, 2014 Лучше бы сам решил знал бы как решать-решил бы сам. Я смотрю умников у коммьюнити варспы не убавилось Link to comment Share on other sites More sharing options...
Epikur 6 Posted November 5, 2014 Share Posted November 5, 2014 знал бы как решать-решил бы сам. Я смотрю умников у коммьюнити варспы не убавилось Для того дают задания, что бы развить мышление. Потратил бы время на разработку алгоритма, почитал бы документацию по паскалю... Следующие задания сам бы решал. Link to comment Share on other sites More sharing options...
Ged 0 Posted November 5, 2014 Author Share Posted November 5, 2014 Для того дают задания, что бы развить мышление. Потратил бы время на разработку алгоритма, почитал бы документацию по паскалю... Следующие задания сам бы решал. хорошо мастер, в следующий раз так и сделаю.Алюминь Link to comment Share on other sites More sharing options...
Epikur 6 Posted November 5, 2014 Share Posted November 5, 2014 Как вариант: program xim; uses crt; var i, j: integer; m, n, k, l, p: integer; x, z: array[1..50, 1..50] of real; summa: real; begin clrscr; writeln('Vvedite razmernost massiva X:'); write('m = '); read(m); write('n = '); read(n); writeln('Vvedite elementi massiva X:'); for i:=1 to m do begin for j:=1 to n do begin write('X[', i, ', ', j,'] = '); read(x[i, j]); end; end; writeln('Vvedite nomer stolbca k:'); write('K = '); read(k); writeln('Massiv Z:'); for i:=1 to m do begin p := 1; for j:=1 to n do begin if (j<>k) then begin z[i, p] := x[i, j]; write(Z[i, p]:6:2, ' '); p := p + 1; end; end; writeln; end; writeln('Vvedite nomer stroki L: '); write('L = '); read(l); for j:=1 to n-1 do begin summa := summa + z[l, j]; end; writeln('Summa elementov stroki L = ', summa:6:2); readln; readln; end. Link to comment Share on other sites More sharing options...
Fobb 3 Posted November 5, 2014 Share Posted November 5, 2014 зачем вы жестко задаете диапазоны? В паскале вроде есть динамические массивы... И где проверка входных данных? Я б такое решение не принял Link to comment Share on other sites More sharing options...
Epikur 6 Posted November 5, 2014 Share Posted November 5, 2014 зачем вы жестко задаете диапазоны? В паскале вроде есть динамические массивы... Я б такое решение не принял Я вот думал с помощью указателей. Но так как пример для начинающих, смысл так мудрить? Link to comment Share on other sites More sharing options...
Geralt of Rivia 70 Posted November 5, 2014 Share Posted November 5, 2014 Fobb, да, действительно, можно было бы использовать динамические массивы. Проверка данных тоже, конечно же, нужна. Но не химикам. У них это не является профильным предметом, так что никто пилить за это не будет. Ну, конкретно мой препод про границы массивов бы ничего не сказал, а вот из-за отсутствия проверки данных мог бы покарать. Link to comment Share on other sites More sharing options...
Epikur 6 Posted November 5, 2014 Share Posted November 5, 2014 Fobb, да, действительно, можно было бы использовать динамические массивы. Проверка данных тоже, конечно же, нужна. Но не химикам. У них это не является профильным предметом, так что никто пилить за это не будет. Ну, конкретно мой препод про границы массивов бы ничего не сказал, а вот из-за отсутствия проверки данных мог бы покарать. и ктому же, ты неверно решил первую часть задания Link to comment Share on other sites More sharing options...
Geralt of Rivia 70 Posted November 5, 2014 Share Posted November 5, 2014 Epikur, разве? В каком месте? Проверил, все работает. Link to comment Share on other sites More sharing options...
Epikur 6 Posted November 5, 2014 Share Posted November 5, 2014 Epikur, разве? В каком месте? Проверил, все работает. Массив Z = Массив X без столбца k. А у тебя что? сумма 3 строки чему будет равна без 3 элемента? Link to comment Share on other sites More sharing options...
Geralt of Rivia 70 Posted November 5, 2014 Share Posted November 5, 2014 Epikur, не совсем понимаю ход твоих мыслей. Link to comment Share on other sites More sharing options...
Epikur 6 Posted November 5, 2014 Share Posted November 5, 2014 Epikur, не совсем понимаю ход твоих мыслей. 1. Результат работы программы Эпикура 2. Результат работы программы Кэр Лаэды Link to comment Share on other sites More sharing options...
Geralt of Rivia 70 Posted November 5, 2014 Share Posted November 5, 2014 Epikur, ты поступил простейшим способом. Так ведь не интересно. Просто переместить элементы же не является оптимальным решением. А у меня, да, косяк, если матрица не квадратная, почему-то. Сейчас гляну. Link to comment Share on other sites More sharing options...
Epikur 6 Posted November 5, 2014 Share Posted November 5, 2014 Epikur, ты поступил простейшим способом. Так ведь не интересно. Просто переместить элементы же не является оптимальным решением. А у меня, да, косяк, если матрица не квадратная, почему-то. Сейчас гляну. у тебя во втором цикле косяк Link to comment Share on other sites More sharing options...
Geralt of Rivia 70 Posted November 5, 2014 Share Posted November 5, 2014 Все, нашел. На выделенном участке кода слегка опечатался и поменял местами m и n. P.S. Выделенный код не выделился в теге code, лол uses CRT; var x, z:array[1..100, 1..100] of real; i, j, m, n, k, l:integer; sum:real; begin writeln('Введите размер матрицы(MxN)'); readln(m, n); writeln('Введите матрицу'); for i := 1 to m do //Ввод for j := 1 to n do read(x[i,j]); writeln('Удаляемый столбец k:'); readln(k); writeln('Номер строки l:'); readln(l); z := x; for i:= 1 to m do for j := k to n-1 do begin z[i,j] := z[i, j+1]; //Смещение столбцов end; dec(n); //Уменьшение кол-ва столбцов for i := 1 to m do begin for j := 1 to n do begin write(z[i,j], ' '); if (i = l) then sum := sum + z[i,j]; // Нахождение суммы end; writeln; end; writeln('Сумма ', l, '-ой строки матрицы Z: ', sum); end. Link to comment Share on other sites More sharing options...
Ged 0 Posted November 5, 2014 Author Share Posted November 5, 2014 Получил 5 баллов, спасибо и на этом. З.Ы. препод сказал,что слишком объемно делал(использовал код Кэра) Link to comment Share on other sites More sharing options...
Geralt of Rivia 70 Posted November 5, 2014 Share Posted November 5, 2014 Ged, как-то странно. Спроси у препода, как можно сделать менее объемно, лол. Ну, думаю, тему можно закрывать. Link to comment Share on other sites More sharing options...
Recommended Posts