Тролль Опубликовано 16 декабря, 2008 Жалоба Поделиться Опубликовано 16 декабря, 2008 (изменено) leksev: #include <stdio.h> #define N 10 #include <conio.h> main() { int i,j,a[N][N],b[N],n,m; printf("Введите размер матрицы\n"); scanf("%d%d",&n,&m); printf("Введите матрицу из%5d элементов\n",n*m); for(i=0;i<n;i++) for(j=0;j<m;j++) { printf("a[%d][%d]=",i+1,j+1); scanf("%5d",*(a+i)+j); } printf("Исходная матрица\n"); for(i=0;i<n;i++) { for(j=0;j<m;j++) printf("%5d",*(*(a+i)+j)); printf("\n"); } for(i=0;i<n;i++) { *(b+i)=0; for(j=0;j<m;j++) if(!(*(*(a+i)+j)%2))(*(b+i))++; } for(i=0;i<n;i++) printf("b[%d]=%d\n",i+1,*(b+i)); getch(); } Изменено 16 декабря, 2008 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
nadi_scool2 Опубликовано 17 декабря, 2008 Жалоба Поделиться Опубликовано 17 декабря, 2008 Тролль,и все??))а я чет ваще тормозила))) :) Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 17 декабря, 2008 Жалоба Поделиться Опубликовано 17 декабря, 2008 (изменено) nadi_scool2: и все??))Просто от вас ждут показа умения использовать один из самых простых приемов програмирования - сведения сложной формулы к циклу повторяющихся вычислений. Так же как, например, в программировании для вычисления суммы часто к нулю прибавляют в цикле по одному слагаемому. Программирование сводится к умению коротко и четко формулировать приказы. Умный слуга улавливает желания хозяина. А компьютер - исполнительный слуга, но дурак, поэтому ему нужен умный хозяин, который может отдавать четкие и короткие распоряжения и должен продумывать за слугу, что и как лучше делать и как это коротко сформулировать - умный хозяин бережет свое время. Изменено 17 декабря, 2008 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
Глупышка Опубликовано 17 декабря, 2008 Жалоба Поделиться Опубликовано 17 декабря, 2008 спасибо а на каком языке ты мне эт написал мне надо в Борланде с++ :sm(100): var i,i1,i2,i3,k:word; c:array[0..27]of word; begin k:=0; for i:=0 to 27 do c:=0; for i1:=0 to 9 do for i2:=0 to 9 do for i3:=0 to 9 do inc(c[i1+i2+i3]); for i:=0 to 27 do k:=k+sqr(c); writeln(k); readln end. спасибо а на каком языке ты мне эт написал мне надо в Борланде с++ :g: Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 17 декабря, 2008 Жалоба Поделиться Опубликовано 17 декабря, 2008 Глупышка: На Паскале. А если надо было на C++, то так и надо было написать. Ну да ладно... #include <iostream.h>int main(){ unsigned i,i1,i2,i3,k,c[28];k=0; for(i=0;i<28;i++)c[i]=0; for(i1=0;i1<=9;i1++)for(i2=0;i2<=9;i2++)for(i3=0;i3<=9;i3++)c[i1+i2+i3]++; for(i=0;i<28;i++)k+=c[i]*c[i]; cout<<k<<endl; getchar(); } Ссылка на комментарий Поделиться на другие сайты Поделиться
nadi_scool2 Опубликовано 18 декабря, 2008 Жалоба Поделиться Опубликовано 18 декабря, 2008 Тролль,мне больше всего понравилось что компьютер дурак :blush2: :D иногда эт и вправду так :D Ссылка на комментарий Поделиться на другие сайты Поделиться
provirt Опубликовано 18 декабря, 2008 Жалоба Поделиться Опубликовано 18 декабря, 2008 Здравсвуйте. Помогите пожалуйста сделать программу на паскале: Создать файл из n вещественных чисел. Отсортировать его элементы по сумме цифр дробной части. Результат сохранить в другом файле. Программу написать с использованием подпрограммы. Ссылка на комментарий Поделиться на другие сайты Поделиться
Глупышка Опубликовано 18 декабря, 2008 Жалоба Поделиться Опубликовано 18 декабря, 2008 спасибо тебе большое ты спас меня прости что первый раз не правильно тебе сказла! еще раз огромное спасибо=) :bye1: :blush2: Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 18 декабря, 2008 Жалоба Поделиться Опубликовано 18 декабря, 2008 (изменено) Глупышка: Пустяки. Рад, если смог помочь :blush2: provirt: function sum(a:real):integer; var i,s:integer; m:longint; beginm:=round(frac(abs(a))*1e8); s:=0;for i:=1 to 8 do begin s:=s+m mod 10; m:=m div 10 end; sum:=send;var F:file of real; a:array[1..100]of real; n,i,j:integer; t:real;beginwrite('n: '); readln(n);assign(F,'File1'); rewrite(F); for i:=1 to n do begin readln(a[i]); write(F,a[i]) end; close (F);for i:=1 to n do for j:=1 to n-i do if sum(a[j])>sum(a[j+1]) then begin t:=a[j];a[j]:=a[j+1];a[j+1]:=t end;assign(F,'File2'); rewrite(F); for i:=1 to n do write(F,a[i]); close (F);reset(F); for i:=1 to n do begin read(F,a[i]); writeln(a[i]:20:8) end; close(F); readlnend. Вводится n, то есть число элементов массива, потом сами эти элементы. Для контроля в конце программы числа из второго файла вывожу на экран. Изменено 18 декабря, 2008 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
Pathfinder Опубликовано 20 декабря, 2008 Жалоба Поделиться Опубликовано 20 декабря, 2008 Здравствуйте, :blush2: , помогите, пожалуйста! нужно написать две программки в среде Visual C++, у меня экзамен в январе, а ещё 7 программ нужно написать, чтобы быть допущенным :D 1. Создать класс координат (double). Определить унарный оператор ++ как дружественную функцию.Определить бинарный оператор +, как функцию-член. Сложить координаты с друг другом и с числом. Присвоить координаты(=). 2. Создать класс типа очередь, которая хранит вещественные числа. Перегрузить оператор ++ как функцию член и -- как дружественную функцию. ++ добавляет элемент в очередь, -- вытаскивает элемент из очереди. Перегрузить бинарный оператор + как функцию-член и * как дружественную функцию. + складывает элемент в очереди с числом, * умножает элемент в очереди на число Ссылка на комментарий Поделиться на другие сайты Поделиться
MyTaHT Опубликовано 20 декабря, 2008 Жалоба Поделиться Опубликовано 20 декабря, 2008 Всем привед! Я новый на этом сайте, но очень не плохо знаю Visual Basic, пишу на нем проги, если кому-то нужна помощь или советы, то кидайте в мыло, отвечу оперативно. MyTaHT2@ya.ru :D Ссылка на комментарий Поделиться на другие сайты Поделиться
Mike497 Опубликовано 21 декабря, 2008 Жалоба Поделиться Опубликовано 21 декабря, 2008 помогите плиз решить три задачи на двумерные массивы: 1 Дана матрица размера M x N (M и N – четные числа). Поменять местами левую верхнюю и правую нижнюю четверти матрицы. 2 Дана матрица размера M x N. Упорядочить ее элементы так, чтобы их последний элемент образовывали убывающую последовательность. 3 Дана квадратная матрица порядка M. Обнулить элементы матрицы, лежащие ниже главной диагонали. Во второй задаче немного не корректно условие (копировал как есть), думаю что вместо "элемнты" надо поставить "столбцы""...хотя... и если можно, то хоть небольшие пояснения к ключевым строкам кодов можете оставить?! :blush2: забыл сказать... это задачки по паскалю... Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 21 декабря, 2008 Жалоба Поделиться Опубликовано 21 декабря, 2008 Mike497: и если можно, то хоть небольшие пояснения к ключевым строкам кодов можете оставить?! Тут и кодов-то почти нет. Ввод, небольшая переделка введенного (максимум две строки), вывод ;) . 1 var a:array[1..100,1..100]of integer; i,j,b,m,n,m2,n2:integer; begin Write('Введите размеры матрицы (четные числа через пробел)? '); ReadLn(m,n); WriteLn('Введите значения элементов строк, разделяя их пробелами');WriteLn(' и заканчивая ввод элементов каждой строки нажатием Enter');for i:=1 to m do begin Write('a, строка ',i,': '); for j:=1 to n do Read(a[i,j]); ReadLn end;{ввод данных}n2:=n div 2; m2:=m div 2; {размеры четверти матрицы}for i:=1 to m2 do for j:=1 to n2 do begin b:=a[i,j]; a[i,j]:=a[i+m2,j+n2]; a[i+m2,j+n2]:=b end; {попарная перестановка элементов верхней левой и нижней правой четвертей матрицы}WriteLn('Измененная матрица');for i:=1 to m do begin for j:=1 to n do Write(a[i,j]:8); WriteLn end;{вывод данных}ReadLn end. 2 var a:array[1..100,1..100]of integer; i,j,k,t,m,n:integer; begin Write('Введите размеры матрицы (числа через пробел)? '); ReadLn(m,n); WriteLn('Введите значения элементов строк, разделяя их пробелами');WriteLn(' и заканчивая ввод элементов каждой строки нажатием Enter');for i:=1 to m do begin Write('a, строка ',i,': '); for j:=1 to n do Read(a[i,j]); ReadLn end;{ввод данных}for j:=1 to n do for k:=1 to n-j do if a[m,k]<a[m,k+1] then for i:=1 to m do begin t:=a[i,k]; a[i,k]:=a[i,k+1]; a[i,k+1]:=t end; {пузырьковая сортировка столбцов по их последним элементам}WriteLn('Измененная матрица');for i:=1 to m do begin for j:=1 to n do Write(a[i,j]:8); WriteLn end;{вывод данных}ReadLn end. 3 var a:array[1..100,1..100]of integer; i,j,b,m,n:integer; begin Write('Введите размер матрицы'); ReadLn(n); WriteLn('Введите значения элементов строк, разделяя их пробелами');WriteLn(' и заканчивая ввод элементов каждой строки нажатием Enter');for i:=1 to n do begin Write('a, строка ',i,': '); for j:=1 to n do Read(a[i,j]); ReadLn end;{ввод данных}for j:=1 to n do for i:=j+1 to n do a[i,j]:=0;{обнуление элементов ниже главной диагонали}WriteLn('Измененная матрица');for i:=1 to n do begin for j:=1 to n do Write(a[i,j]:8); WriteLn end;{вывод данных}ReadLn end. Ссылка на комментарий Поделиться на другие сайты Поделиться
Mike497 Опубликовано 21 декабря, 2008 Жалоба Поделиться Опубликовано 21 декабря, 2008 Уважаемый Тролль!!! Цены Вам НЕТ!!! Спасибо за всё!!! :) Ссылка на комментарий Поделиться на другие сайты Поделиться
DoctorG Опубликовано 22 декабря, 2008 Жалоба Поделиться Опубликовано 22 декабря, 2008 (изменено) Вобщем есть задача. Суть ее такова Дана дата в юлианском календаре, перевести ее в современный (Григорианский????) календарь. Вобщем проблема в том, что я не могу понять что делать. То есть сам алгоритм. насколько я понимаю в юлианском календаре каждый год номер которого делиться на 4 является високосным. и изходя из этого и есть разница в датах. Ну написал я две функции одна определяет високосный год по юлианскому календарю другая по григорианскому. int julian_year(int c){if(c%4==0) return 1;else return 0;}int gregorian_year(int c){if (c%400==0)return 1;else if (c%100==0)return 0;else if (c%4==0)return 1;elsereturn 0;} Что дальше то делать? Мне нужно знать сам алгоритм нахождения даты. А уж закодить его я смогу. Изменено 22 декабря, 2008 пользователем DoctorG Ссылка на комментарий Поделиться на другие сайты Поделиться
DoctorG Опубликовано 22 декабря, 2008 Жалоба Поделиться Опубликовано 22 декабря, 2008 все решил Ссылка на комментарий Поделиться на другие сайты Поделиться
gnade Опубликовано 22 декабря, 2008 Жалоба Поделиться Опубликовано 22 декабря, 2008 Нужна помощь! Времени просто уже не хватает щяс добиваю SSE команды =) Задание на masm: Исмользуя ММХ команды выполнить параллельное упаковывание 2-х массивов по 4 знаковых данных размером в двойное слово. ХЕЛП!! Ссылка на комментарий Поделиться на другие сайты Поделиться
Hynko Опубликовано 25 декабря, 2008 Жалоба Поделиться Опубликовано 25 декабря, 2008 Помогите решить пару задач плз...на паскале. :blush2: Типа данных запись Багаж пассажира характеризуется количеством вещей и общим весом вещей. Сформировать переменную Bagaj, содержа-щую сведения о багаже нескольких пассажиров. Сведения о багаже каждого пассажира представляют собой запись с дву-мя полями: одно поле целого типа (количество вещей) и одно – действительное (вес в килограммах). Найти багаж, средний вес одной вещи в котором отличается не более, чем на 0,3 кг от общего среднего веса одной вещи. И с массивами.. 1)Дана целочисленная матрица размера 6х9. Получить новую матрицу, получающуюся из данной перестановкой столбцов – первого и последнего, второй с предпоследним и т.д.; 2)Заданы два одномерных массива с различным количеством элементов и натуральное число к. Объединить их в один массив, включив второй массив между к-м и (к+1)-м элементами первого, при этом не используя дополнительный массив. Ссылка на комментарий Поделиться на другие сайты Поделиться
The Destroy Опубликовано 27 декабря, 2008 Жалоба Поделиться Опубликовано 27 декабря, 2008 Здравствуйте. необходимо выполнить следующее задание Условие: 21.секретарь отвечает на телефонные звонки,поступающие по двум линиям.звонки поступают с внешней и внутренней линии с одинаковой интенсивностью 0.1 звонка/мин образуя простейшие потоки событий.ответ на 1 звонок занимает у секретаря в среднем 1 минуту,время ответа распределено экспоненциально.Во время ответа телефон секретаря занят,при этом все вохдящие звонки с внутренней линии получают отказ а для звонков с внешней линии телефонная станция организует буфер,в котором может ожидать ответа один внешний звонок с выдачей сигнала ждите ответа.если буфер и секретарь заняты,то внешний звонок получает отказ.рассчитать вероятность того что внешний звонок получил отказ Что надо: 1) Построить граф,найти укравнение колмогорова 2)написать прогу которая это все выполняет... Сдать надо 30 декабря Пишите кто может помочь здесь нужно написать программу согласно условию выше на C++ Ссылка на комментарий Поделиться на другие сайты Поделиться
The Destroy Опубликовано 27 декабря, 2008 Жалоба Поделиться Опубликовано 27 декабря, 2008 уточнение к 1 заданию описание на примере как строится граф и уравнение по нему http://ifolder.ru/9766968 Ссылка на комментарий Поделиться на другие сайты Поделиться
2hard4me Опубликовано 27 декабря, 2008 Жалоба Поделиться Опубликовано 27 декабря, 2008 помогите плз решить пару задачек на Dev C++. Нужно срочно, завтра экзамен. Помогите плз кто чем может. 1. Дано информацию о готеле (сколько человек и на каком этаже живут). где i - № корпуса,j - номер этажа,k - номер комнаты. Вычислить количество людей в номерах в n корпусе на z этаже. 2. |Январь| Февраль| .... | Декабрь| |Z(1,1) | Z(1,2) | ....| Z (1,n) | - прибыль 1-ой фирмы |......... | ......... | ....| .......... | |Z(m,1) | Z(m,2) | ....| Z (m,n) | - прибыль m-ой фирмы Вычеслить минимальные прибыли каждой фирмы на протяжении N месяцев и вывести их, вказав номер фирмы и номер месяца. Есть еще три задачки, но не знаю как выложить рисунки сюда :bye1: Просит урл...что с ним делать? Заранее спасибо! Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 27 декабря, 2008 Жалоба Поделиться Опубликовано 27 декабря, 2008 (изменено) 2hard4me: По первой задаче - есть трехмерный массив с измерениями: корпуса, этажи, комнаты. Просуммировать количества людей перебором всех комнат при заданных корпусе и этаже (они должны вводиться). Полагаешь начальную сумму людей равной нулю и перебираешь комнаты, приплюсовывая к этой сумме количества людей. По второй - двумерный массив фирм и месяцев. Для каждой фирмы ищешь минимум по месяцам. Полагаешь сначала для первой фирмы минимум равным прибыли в первом месяце и перебираешь месяцы, каждый раз сравнивая прибыль месяца с этим минимумом; если он оказался бОльшим, чем прибыль месяца, меняешь значение минимума на прибыль этого месяца. Потом то же для второй фирмы (второй строки матрицы). И так далее до m. Изменено 27 декабря, 2008 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
2hard4me Опубликовано 27 декабря, 2008 Жалоба Поделиться Опубликовано 27 декабря, 2008 Тролль: Спасибо, уже решил :bye1: стояло только выйти покурить, как мысли собрались в кучу :g: Но все равно спасибо, красиво объясняешь. p.s. если кому-то будет надо, пишите в ЛС, скину задачи :g: Ссылка на комментарий Поделиться на другие сайты Поделиться
Глупышка Опубликовано 3 января, 2009 Жалоба Поделиться Опубликовано 3 января, 2009 привет еще раз есть три задачи с которыми я не могу справиться! 1) составить программу нахождения наименьшего общего кратного четырёх заданных с клавиатуры(задача на функции). 2)составить программу работы с базой данных "Список организаций".База данных хранит следующую информацию: дата регистрации организации, название организации, вид собственности, фио директрора, уставной капитал, количество сотрудников, контактный телефон.(задача на структуры. надо посчитать 3-любые характеристики) 3)y=-(x*x*x)-(задача на график .нужна программа и графическое изображение) Все программы выполняются в с++!сделайте пожалуста=) :) Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 3 января, 2009 Жалоба Поделиться Опубликовано 3 января, 2009 (изменено) Глупышка: 1) составить программу нахождения наименьшего общего кратного четырёх заданных с клавиатуры(задача на функции). #include<stdio.h>int nod(int a,int b){return a%b?nod(b,a%b):b;}int noc(int a,int b){return a/nod(a,b)*b;}main(){int a,b,c,d,e; scanf("%d%d%d%d",&a,&b,&c,&d); e=noc(noc(noc(a,b),c),d);printf("\n%d\n",e); getchar(); getchar();} 2)составить программу работы с базой данных "Список организаций".База данных хранит следующую информацию: дата регистрации организации, название организации, вид собственности, фио директрора, уставной капитал, количество сотрудников, контактный телефон.(задача на структуры. надо посчитать 3-любые характеристики)Что такое "работа с базой данных", неясно. Возможно, это выкидывание ее в мусорную корзину? Тоже ведь работа. Так что я сделал только ввод и вывод данных, поскольку что с ними еще надо делать - неизвестно. В программе все данные вводятся по соответствующим запросам до тех пор, пока в ответ на запрос даты регистрации организации (он первый при вводе данных каждой организации) не будет просто нажата Enter, после этого все введенные по всем организациям данные распечатываются. Для каждой организации дата регистрации организации, название организации, вид собственности, фио директора считаются строками, а уставной капитал, количество сотрудников, контактный телефон - числами. #include <stdio.h>main(){struct {char dr[10],nazv[15],vids[15],fio[15]; long unsigned cap,kol,tel;}s[100];int i;i=0; while(1) {printf("дата регистрации? "); gets(s[i].dr); if(!s[i].dr[0])break; printf("название организации? "); gets(s[i].nazv); printf("вид собственности? "); gets(s[i].vids); printf("фио директора? "); gets(s[i].fio); printf("уставной капитал? "); scanf("%lu",&s[i].cap); printf("количество сотрудников? "); scanf("%lu",&s[i].kol); printf("контактный телефон? "); scanf("%lu",&s[i].tel); getchar(); i++;}i=0; while(s[i].dr[0]) {printf("%-10s%-15s%-15s%-15s%5lu%5lu%10lu\n",s[i].dr,s[i].nazv,s[i].vids, s[i].fio,s[i].cap,s[i].kol,s[i].tel); i++;}getchar();} 3)y=-(x*x*x)-(задача на график .нужна программа и графическое изображение)Программа будет сильно зависеть от компилятора. Кажется, был Borland? #include <graphics.h>#include <stdio.h>int main(){int x,GDriver=VGA,GMode=VGAHI,ErrorCode;initgraph(&GDriver,&GMode,""); ErrorCode=graphresult();if(ErrorCode!=grOk)printf("Graphics Error: %s\n",grapherrormsg(ErrorCode));else for(x=-320;x<320;x++)putpixel(x+320,240+.7e-5*x*x*x,9);getch(); closegraph();} Снимок экрана - приложением. Изменено 3 января, 2009 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти