М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
bumnov23
bumnov23
05.10.2021 05:53 •  Информатика

(на языке программирования ) даны действительные числа (n< =150) удалить из последовательности те члены , поpядковые номеpа котоpых кpатны 4 , сохpанив пpежним поpядок оставленных членов.(за- мечание: удалить из существующего массива, а не создавать но- вый

👇
Ответ:
superegr
superegr
05.10.2021
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main() {
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);

    int n, i, j;

    do {
    printf(" Введите n<=150. n = ");
    scanf("%d", &n);
    printf("\n");
    if (n > 150) printf(" Слишком много!\n");
    } while (n > 150);
    
    float a[n];
    srand(time(NULL));

    printf(" ***Исходный массив ***\n");
    for (i = 1; i <= n; i++)
    {
        a[i] = (float)rand() / RAND_MAX;    
        printf("%.3f ", a[i]);    
    }
    printf("\n\n");

    for (i = 4; i <= n; i+=3)
    {
            for (j = i; j < n; j++) a[j]=a[j+1];
            --n;
    }
   
    printf(" ***Измененный массив ***\n");
    for (i = 1; i <= n; i++) printf("%.3f ", a[i]);    
    
    return 0;
}
4,5(25 оценок)
Открыть все ответы
Ответ:
Nastya3748
Nastya3748
05.10.2021

ответ: у тебя не правильное .в начале нужно найти максимальное число не оканч.на 3 , а потом вывести макс. число оканчивающееся на 3.ты разберись. но если ты шаришь в икт и просто не знаешь , как задать условие ,то там нужно через целые и кратные (div/mod) в твоем случае будет как-то так

if a mod 10=3 and a> max then max: =a

ну если ты ленивая жо#а то вот:

var a,b,k,max: integer;

begin

writeln('введите количество чисел > > n ');

readln(n);

max: =0;

for k: = 1 to n do;

begin

writeln('введите числа > > a ');

readln(a);

if (a mod 10=3) and (a> max) then max: =a

end;

writeln('самое больше число оканчивающееся на 3 -',max)

end.

в полной правильности я не уверен(т.к у меня нету паскаля),проверь компилятором

4,7(46 оценок)
Ответ:
жепа564
жепа564
05.10.2021
// PascalABC.Net 3.0, сборка 1052
const
  Rus=['А'..'Я'];
var
  s:string;
  i,k,t:integer;
  c,c1,tc,sc:char;
  f:array['А'..'а'] of byte; // 'а' - это для 'Ё'
  ch:array['А'..'а'] of char;
begin
  Write('Введите строку: '); Readln(s);
  for c:='А' to 'а' do begin f[c]:=0; ch[c]:=c end;
  k:=0;
  for i:=1 to Length(s) do begin
    c:=UpCase(s[i]);
    if c in Rus then begin Inc(f[c]); Inc(k) end
    else
      if c='Ё' then begin Inc(f['а']); Inc(k) end;
  end;
  Writeln('Количество русских букв равно ',k);
  { сортировка массива со счетчиком количества букв }
  for c1:='А' to Pred('а') do
  for c:='А' to Pred('а') do
    if f[c]<f[Succ(c)] then begin
      t:=f[c]; tc:=ch[c]; sc:=Succ(c);
      f[c]:=f[sc]; ch[c]:=ch[sc];
      f[sc]:=t; ch[sc]:=tc
    end;
  Writeln('Частота встретившихся букв');
  c:='А';
  while (c<='а') and (f[c]>0) do begin
    if ch[c]='а' then ch[c]:='Ё';
    Writeln(ch[c],' - ',f[c]);
    Inc(c)
  end;
end.

Тестовое решение:
Введите строку: Когда я был парнишкой, носил я брюки клёш
Количество русских букв равно 33
Частота встретившихся букв
К - 4
И - 3
Л - 3
О - 3
А - 2
Б - 2
Н - 2
Р - 2
Ш - 2
Я - 2
Г - 1
Д - 1
Й - 1
П - 1
С - 1
Ы - 1
Ю - 1
Ё - 1
4,4(45 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ