Prohozhiy Опубликовано 27 ноября, 2007 Жалоба Поделиться Опубликовано 27 ноября, 2007 Darhazer: Да я уже разобрался...руки у мя не те :) Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Charlie Rat Опубликовано 27 ноября, 2007 Жалоба Поделиться Опубликовано 27 ноября, 2007 На обычном C: 1) main(){unsigned a,s;scanf("%u",&s);a=0;while(s>0){a+=1;s=s/10;}printf("%u\n\n",a);} 2) main(){unsigned a,s;scanf("%u",&s);a=0;while(s>0){a=a*10+s%10;s=s/10;}printf("%u\n\n",a);} 3) main(){unsigned a,s;scanf("%u",&s);a=0;while(s>0){a+=s%10;s=s/10;}printf("%u\n\n",a);} Thanks!!! Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Charlie Rat Опубликовано 30 ноября, 2007 Жалоба Поделиться Опубликовано 30 ноября, 2007 Помогите решить задачи. Самому просто не хватает времени!!!!!!!!!!!! 1. Создать программу, которая выводит на экран простые числа в диапазоне от 2 до 1000. (Число называется простым, если оно делится только на 1 и на само себя без остатка; причем числа 1 и 2 простыми не считаются). 2. Написать программу, которая выводит на экран - следующую фигуру: ********************* * * * * * * * * * * * * ********************* ширина и высота фигуры задаются пользователем с клавиатуры. 3. При помощи цикла показать на экран календарь текущего месяца. Из звездочек должен быть квадрат. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 1 декабря, 2007 Жалоба Поделиться Опубликовано 1 декабря, 2007 Вот первая задача: main(){int i,k,n,m[1000];k=0;for(n=2;n<1000;n++){for(i=0;i<k;i++)if(n%m==0) break;if(i==k)m[k++]=n;};for(i=0;i<k;i++)printf("%i ",m);printf("\n\n");} Остальные записывать неинтересно, там почти только вывод на экран. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Charlie Rat Опубликовано 1 декабря, 2007 Жалоба Поделиться Опубликовано 1 декабря, 2007 Спасибо за ответ. Только не понятно как в цикле задать, что в строку выводилось только семь цифр. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 1 декабря, 2007 Жалоба Поделиться Опубликовано 1 декабря, 2007 (изменено) Переводом строки после 7-го числа в строке. Ну, например, вот программа по третьему заданию: main(){int i;printf("\n\n pon vt sr ch pt sub vos \n");for(i=-4;i<=31;i++)printf(i>0?(i+4)%7==0?"\n%4i":"%4i":" ",i);} Изменено 1 декабря, 2007 пользователем Тролль Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Prohozhiy Опубликовано 2 декабря, 2007 Жалоба Поделиться Опубликовано 2 декабря, 2007 Задачка на Си. Наверняка кто-то делал подобное. :mad: //Написать собственную реализацию следующих библиотечных функций для работы со строками: - strcpy char* strcpy(char *strDestination, const char *strSource); - strcat char* strcat(char *strDestination, const char *strSource); - strcmp int strcmp(const char *string1, const char *string2); - strchr char* strchr(const char *string, int c); - strdup char* strdup(const char *strSource);// Помогите плиз, простов времени катастрофически не хватает :sly: Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
FPG Опубликовано 2 декабря, 2007 Жалоба Поделиться Опубликовано 2 декабря, 2007 Помогите пожалуйста, нужно написать программу на Turbo Pascal. Дана матрица А(5,3) 1) Найти строку ,содержащую минимальный элемент матрицы 2) Найденную строку поменять местами с четвёртой строкой 3) В полученной матрице подсчитать сумму для элементов третьей строки по формуле S=∑ √ 1.2+a3j Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Хиросима Опубликовано 2 декабря, 2007 Жалоба Поделиться Опубликовано 2 декабря, 2007 Нужно написать следующую задачу на Pascal: По украински: Використовуючи опис перелічувального типу з назвами років по східному календарю, по введеному року вивести назву цього року по східному календарю Для тех кто украинский не понимает: Используя описание перечислительного типа с названиями лет по восточному календарю, по введенному году вывести название этого года по восточному календарю ОЧЕНЬ нужно! ГОРЮ! Заранее благодарен! Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 2 декабря, 2007 Жалоба Поделиться Опубликовано 2 декабря, 2007 Хиросима: Бредовое задание. "Перечислительный" тип для этого абсолютно не подходит. Его придется просто прицепить к задаче, в которой он нужен, как собаке пятая нога. Значения перечисляемого типа нельзя прямо выводить, он чисто "внутрипрограммный", а в этой программе практически только ввод-вывод. Без использования этого типа программа была бы вдвое короче и понятнее. Да и годы восточного календаря начинаются в конце февралей по нашему летосчислению. В программе весь вывод - на английском, так как заглотит ли компилятор слова на русском или украинском, зависит от русификации или українізації. Если у вас проходит вывод кириллицы, все английские слова внутри строк (строк в смысле Паскаля, т.е. которые в одинарных кавычках) можно заменить их русским или украинским переводом. По мне, если писать английскими буквами, то лучше уж на английском. Так что: program Year; type Color=(White,Black,Blue,Red,Yellow); Animal=(Monkey,Rooster,Dog,Pig,Rat,Ox,Tiger,Rabbit,Dragon,Snake,Horse,Sheep); const Col:array of string[10]=('White','Black','Blue','Red','Yellow'); An:array[Animal] of string[10]=('Monkey','Rooster','Dog','Pig','Rat','Ox', 'Tiger','Rabbit','Dragon','Snake','Horse','Sheep'); var Y:integer; begin Write('Year? ');ReadLn(Y); WriteLn('Animal: ',An[Animal(Y mod 12)],' Color: ',Col[Color(Y div 2 mod 5)]); WriteLn;ReadLn end. P.S. Условие лучше было оставить на украинском ;) . В Паскале нет "перечислительного" типа, есть перечислимый. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
FPG Опубликовано 2 декабря, 2007 Жалоба Поделиться Опубликовано 2 декабря, 2007 Помогите пожалуйста, очень срочно нужно написать программу на Turbo Pascal. Дана матрица А(5,3) 1) Найти строку ,содержащую минимальный элемент матрицы 2) Найденную строку поменять местами с четвёртой строкой 3) В полученной матрице подсчитать сумму для элементов третьей строки по формуле S=∑ √ 1.2+a3j Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Хиросима Опубликовано 2 декабря, 2007 Жалоба Поделиться Опубликовано 2 декабря, 2007 Бредовое задание. "Перечислительный" тип для этого абсолютно не подходит. Его придется просто прицепить к задаче, в которой он нужен, как собаке пятая нога. Значения перечисляемого типа нельзя прямо выводить, он чисто "внутрипрограммный", а в этой программе практически только ввод-вывод. Без использования этого типа программа была бы вдвое короче и понятнее. Такое дали условие... В Паскале нет "перечислительного" типа, есть перечислимый. Может быть! Я не знал как будет перевод "перелічувального" - два on-line переводчика так перевели! Как бы там ни было! Премного благодарен! Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 2 декабря, 2007 Жалоба Поделиться Опубликовано 2 декабря, 2007 (изменено) Хиросима: Такое дали условие...Да я понимаю... Не твоя вина. Но трудно не прокомментировать ;) . FPG: Еще одно бредовое задание :D . "Дана матрица". Ну и где она?! Всем ордена и медали, а нам ничего не дали... ;) Но ладно, сгенерируем случайную матрицу сами. var i,j,k:Integer; s:Real; a:array[0..5,1..3] of Real; beginRandomize; for i:=1 to 5 do for j:=1 to 3 do a[i,j]:=Random(100);WriteLn(' Ishodnaja matriza:');for i:=1 to 5 do begin for j:=1 to 3 do Write(a[i,j]:8:2); WriteLn end;s:=a[1,1]; for i:=1 to 5 do for j:=1 to 3 do if s>=a[i,j] thenbegin s:=a[i,j]; k:=i end;a[0]:=a[4]; a[4]:=a[k]; a[k]:=a[0];s:=0; for j:=1 to 3 do s:=s+sqrt(1.2+a[3,j]);WriteLn; WriteLn(s:8:2); ReadLnend. Строка массива с индексом 0 тут вспомогательная, сгенерированная матрица помещается в строки с 1-й по 5-ю. Формула суммирования в программе, очень может быть, неверна, поскольку истолковать ее запись в твоем сообщении я не могу, записал нечто "по мотивам" этой записи. P.S. Без тега "Код" кусочки кода в смайлики превратились ;) Изменено 2 декабря, 2007 пользователем Тролль Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
FPG Опубликовано 3 декабря, 2007 Жалоба Поделиться Опубликовано 3 декабря, 2007 Тролль: Спасибо, вот только формулу я неправильно записал, там над знаком "∑" стоит "4" а под знаком "∑" стоит "j=1" И ещё нам препод сказал что надо программу без "Random" делать , тогда она как будет выглядеть? :) Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 3 декабря, 2007 Жалоба Поделиться Опубликовано 3 декабря, 2007 Никак не будет выглядеть. Как ты представляешь себе суммирование 4-х чисел из имеющихся в строке 3-х? И вообще я не понимаю, как вас учат и какие из вас специалисты получатся, если у вас никто даже формулу прочитать не может :) . Без random? Хорошо, вводим матрицу вручную. Замени 3-ю строку на for i:=1 to 5 do for j:=1 to 3 do begin Write('A(',i,',',j,')='); ReadLn(a[i,j]) end; Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
mmap Опубликовано 3 декабря, 2007 Жалоба Поделиться Опубликовано 3 декабря, 2007 Извиняюсь за оффтоп. :) Тролль: Такое сплошь и рядом случается, у нас, например, в универе только 3 человека из 2-х потоков ранее занимались программированием. Остальные даже как объявить переменную не знали. К 5-му курсу уже все более-менее нормально пишут (правда за утечки памяти поубивал бы всех :) ). Научились. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
FPG Опубликовано 3 декабря, 2007 Жалоба Поделиться Опубликовано 3 декабря, 2007 Тролль: Насчёт формулы извиняюсь конечно. А насчёт "random": когда у препода спрашивали можно ли через random решать, в ответ нам прозвучало: " вы чё с ума сошли?" Вот поэтому и спрашиваю, можно ли без "random" написать программу, а специальность моя далека от программирования, информатика у нас только 1 курс будет. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Pshuk Опубликовано 3 декабря, 2007 Жалоба Поделиться Опубликовано 3 декабря, 2007 Сделайте пожалуста програму на ПАСКАЛЕ, он же ТУРБО, ПРОГРАМУ: Знайти значення змінної ∑1/k*k y= -------------------- (над знаком "∑" - бесконечность. под "∑"- k=1) cos*cos(x*x-0.5) з точністю до 0,00001 для значень x, розташованих на інтервалі (0; 1) з кроком 0,25; на інтервалі (0; 3) з кроком 0,5. Роздрукувати таблицю значень y і x. пЛИЗ, ну очень срочно надо... Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 4 декабря, 2007 Жалоба Поделиться Опубликовано 4 декабря, 2007 (изменено) Слушайте, WORD у кого-нибудь есть? В нем есть редактор формул, кто мешает записать формулу в человеческом виде, а не будто по ней трактор проехал? :) Как я понимаю, имелась в виду формула Кроме того, с 0 до 1 мы считаем с шагом 0,25, а потом снова считаем это с шагом 0,5? Опять что-то неразумное в условии. Но ладно, в программе просто считается до 1 с шагом 0,25, а дальше с шагом 0,5. var x,y:Real;begin WriteLn(' x y'); x:=0;repeat y:=sqr(Pi)/6/sqr(cos(sqr(x)-0.5)); WriteLn (x:6:2,y:10:5);if x<=0.9 then x:=x+0.25 else x:=x+0.5;until x>3.1;ReadLnend. Сумму наверху я считать в программе не стал, ряд обратных квадратов имеет суммой Pi²/6. При большом желании ее можно посчитать строкой q:=0; s:=0; repeat q:=q+1.0; p:=1/sqr(q); s:=s+p until p<1e-12; хотя обосновать выбор последнего числа тут было бы весьма сложно. Изменено 4 декабря, 2007 пользователем Тролль Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Pshuk Опубликовано 4 декабря, 2007 Жалоба Поделиться Опубликовано 4 декабря, 2007 Помогите в очередной раз, ну просто конец года и преподы совсем одурели (ТУРБО ПАСКАЛЬ): 1)Cкласти програму и блок-схему для побудови графіка функції функції на вказаному проміжку А=0 В=1 функция:2/(1+х*х*х) 2)Написать программу и блок-схему вычитания и деления двух комплексных чисел Очень срочно! Я в паскале-ноль, выручайте,пиплз! ТРОЛЛЬ помоги.... Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 4 декабря, 2007 Жалоба Поделиться Опубликовано 4 декабря, 2007 (изменено) Pshuk: А до конца года что, времени не было слегка подучить? Золотая рыбка - животное ненадежное... :D 1) var i,n:Integer; A,B,S,X,Y:Real; begin n:=10; A:=0; B:=1; S:=(B-A)/n; for i:=0 to n do begin X:=S*i+A; Y:=2/(1+X*X*X); WriteLn (X:5:2,Y:9:4) end; ReadLnend. 2) var A,B,C,D,Ad,Bd,Aq,Bq:Real; begin Write('Re Im:'); ReadLn(A,B); Write('Re Im:'); ReadLn(C,D); Ad:=A-C; Bd:=B-D; Aq:=(A*C+B*D)/(sqr©+sqr(D)); Bq:=(C*B-A*D)/(sqr©+sqr(D));WriteLn('Difference=',Ad,'+i*',Bd); WriteLn('Quotient= ',Aq,'+i*',Bq); ReadLnend. Блок-схемы я чертить не буду, я их вообще терпеть не могу. На этом уровне сложности программ они нужны так же, как украшать буквы в программе завитушками. Не говоря уже о том, что перерисовывать текст программы внутрь ромбиков и квадратиков - занятие для младшего школьного возраста :) . P.S. Во второй программе действительная и мнимая части каждого числа вводятся друг за другом и разделяются пробелом. После ввода мнимой части нажимается Enter. Изменено 5 декабря, 2007 пользователем Тролль Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Pshuk Опубликовано 5 декабря, 2007 Жалоба Поделиться Опубликовано 5 декабря, 2007 Спасибо!!! Не знаю, штоб я без тебя делал! В первом задание нужно ищё построить этот график... с использованием всяких там графических режимов, на весь экран ... Выручай... Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 5 декабря, 2007 Жалоба Поделиться Опубликовано 5 декабря, 2007 (изменено) uses Graph,CRT;const N=639;M=479;var i,GrDriver,GrMode:Integer; A,B,X,Y,S:Real;begin GrDriver:=VGA; GrMode:=VGAHi; InitGraph(GrDriver,GrMode,'\TP\BGI'); if GraphResult<>GrOk then begin WriteLn('Error!');Halt end; SetBkColor(LightGray); SetColor(Red); SetLineStyle(0,0,3);A:=0; B:=1; S:=(B-A)/N; LineTo(0,M); LineTo(N,M); for i:=0 to N dobegin X:=S*i+A;Y:=2/(1+X*X*X);PutPixel(i,Round(M*(1-Y/2)),Green) end; i:=Ord(Readkey)end. При работе в графическом режиме Turbo Pascal использует драйвер графического режима egavga.bgi, в программе задается путь к нему. В программе считается, что этот драйвер находится в каталоге \tp\bgi диска, на котором находится Pascal (обычно Turbo Pascal устанавливают в каталог \tp), если нет, то путь к каталогу с драйвером в программе надо подкорректировать. Изменено 5 декабря, 2007 пользователем Тролль Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Pshuk Опубликовано 5 декабря, 2007 Жалоба Поделиться Опубликовано 5 декабря, 2007 Я понимаю , шо уже достал со своими програмами, но сделайте плз ещё одну... последню...java script:emoticon(':blushing:', 'smid_1') Використовуючи формулу для генерації звуків де (здесь должно быть изображение но я не знаю как его вставить. Как его вставить, у меня кнопка изображение не работает?) Hz - змінна типу Word, частота ноти в Гц; Okt - змінна типу Integer, приймає значення від -3 до 4; Nota - змінна типу Byte, приймає значення від 1 до 12. написати програму «піаніно» у повному обсязі, тобто реалізувати звучання всіх нот у межах однієї октави. (пищать должен динамик всередине сис. блока)При цьому передбачити можливість зміни октави і тривалості, а також відображення на екрані монітора номера октави і назви ноти. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
neprogramist Опубликовано 6 декабря, 2007 Жалоба Поделиться Опубликовано 6 декабря, 2007 Напишите программу на borland паскале,пожалуйста. очень надо! Самостоятельно рассмотреть работу с функциями: CHR, ORD, PRED, SUCC. В заданный непустой текст входят только цифры и буквы. Длина текста не более 12 символов. Определить, удовлетворяется ли следующее свойство: 1)Текст является десятичной записью числа, кратного количеству символов; Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.